test: fix native coverage upload (again), and fail codecov if native upload fails#9059
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request refines the native code coverage pipeline for Android and iOS. By moving the coverage flush logic into the application process via a dedicated native module, it resolves long-standing issues where coverage data was lost due to process termination during test teardown. Additionally, it improves Codecov integration by defining explicit components for native coverage, providing a clearer signal for CI success or failure. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #9059 +/- ##
============================================
- Coverage 61.38% 60.86% -0.51%
- Complexity 0 1602 +1602
============================================
Files 286 455 +169
Lines 14494 33589 +19095
Branches 3047 5405 +2358
============================================
+ Hits 8895 20441 +11546
- Misses 5515 11976 +6461
- Partials 84 1172 +1088
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
b096774 to
b444313
Compare
this is a known Detox issue, there are various ways to mitigate it, but reaching in and just directly patching it to wait for 20s vs 10s before failing seems adequate given the low frequency of this one
native coverage was still failing to upload correctly, and it was a silent false positive this doesn't enforce a specific level of native coverage but enforces that it is correctly collected and uploaded - that the plumbing + system is working
b444313 to
faf4cce
Compare
Description
I am not concerned (yet) with native coverage not having high percentages, but I just finished overhauling native coverage in general, and now upload in specific, and I want a clear signal if native coverage generation -> dump -> process -> upload is failing
Related issues
No issues but is a continuation of this PR:
Release Summary
two test comments === no release
Checklist
AndroidiOSOther(macOS, web)e2etests added or updated inpackages/\*\*/e2ejesttests added or updated inpackages/\*\*/__tests__Test Plan
If you go on codecov.io and see line coverage information in
packages/**/androidandpackages/**/iosthen this is workingIf there is a pull request where there is no coverage for those and it fails the codecov check, then it is also working
Think
react-native-firebaseis great? Please consider supporting the project with any of the below:React Native FirebaseandInvertaseon Twitter