-
Notifications
You must be signed in to change notification settings - Fork 48
fix: Adding coverage report for integration tests #599
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThese changes introduce integration test coverage collection and reporting infrastructure. A new Docker coverage stage is added with LLVM tools, Docker Compose is updated to build and mount this stage, GitHub Actions workflow adds a Codecov upload step, and codecov configuration defines the integration flag. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docker-compose.integration.yml (1)
112-112: Remove the unusedtest-resultsvolume.The
test-resultsvolume is defined but not mounted by any service. The coverage output is now collected via the./coveragemount in theintegration-testsservice. Remove this unused volume definition.
🧹 Nitpick comments (1)
.github/codecov.yml (1)
4-4: Clarify the comment to reflect the new integration flag.The comment states "Wait for all 3 flag uploads (ai, dev, properties)" but doesn't account for the newly added
integrationflag. While the integration flag is informational and correctly excluded from status checks, the comment should be updated for clarity.🔎 Suggested clarification
- after_n_builds: 3 # Wait for all 3 flag uploads (ai, dev, properties) + after_n_builds: 3 # Wait for all 3 non-informational flag uploads (ai, dev, properties)
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
.github/codecov.yml.github/workflows/integration-tests.yamlDockerfile.integrationdocker-compose.integration.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: boostsecurity - boostsecurityio/semgrep-pro
- GitHub Check: Redirect rules - openzeppelin-relayer
- GitHub Check: Header rules - openzeppelin-relayer
- GitHub Check: Pages changed - openzeppelin-relayer
- GitHub Check: Analyze (rust)
- GitHub Check: semgrep/ci
🔇 Additional comments (6)
.github/codecov.yml (1)
32-36: LGTM! Integration flag configuration is appropriate.The
informational: truesetting is appropriate for a WIP feature, ensuring the integration coverage won't block CI while the functionality is being refined.docker-compose.integration.yml (2)
86-86: LGTM! Coverage target is correctly configured.The change to target the
coveragestage aligns with the new coverage collection infrastructure added in Dockerfile.integration.
105-106: LGTM! Coverage volume mount is properly configured.The volume mount correctly maps the local
./coveragedirectory to/app/coveragein the container, enabling coverage data collection.Dockerfile.integration (2)
19-22: LGTM! LLVM tools installation is correct.The installation of
llvm-tools-previewandcargo-llvm-covprovides the necessary tooling for coverage collection.
70-74: LGTM! Coverage command is properly configured.The
cargo llvm-covcommand is correctly set up to generate LCOV format output at the expected path with appropriate test flags..github/workflows/integration-tests.yaml (1)
50-58: LGTM! Codecov upload is properly configured.The coverage upload step is well-configured with:
if: always()ensures coverage is uploaded even on test failures- Pinned action SHA for security
fail_ci_if_error: falseis appropriate for a WIP feature- The file path and flags align with the codecov.yml configuration
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files
Flags with carried forward coverage won't be shown. Click here to find out more. @@ Coverage Diff @@
## main #599 +/- ##
==========================================
- Coverage 92.29% 92.17% -0.13%
==========================================
Files 250 250
Lines 90637 90756 +119
==========================================
Hits 83650 83650
- Misses 6987 7106 +119 🚀 New features to boost your workflow:
|
Summary
This PR adds code coverage collection infrastructure for integration tests using LLVM coverage tools, laying the groundwork for comprehensive coverage reporting across all test types (unit, AI, dev, properties, and integration tests).
IMPORTANT NOTE: Integration test coverage upload to Codecov is currently disabled (TODO comments) and will be enabled once the test suite reaches sufficient maturity. By disabling the coverage report upload, we avoid affecting the current coverage percentage with integration tests that are not yet ready.
Testing Process
Checklist
Note
If you are using Relayer in your stack, consider adding your team or organization to our list of Relayer Users in the Wild!
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.