Repository navigation
Make the coverage.config obj exclusion match on Linux - #27
Conversation
… Windows The obj source exclusion was written with Windows-only path separators, so on the Linux CI runners it matched nothing, and source-generated files under obj/ (Refit clients, logging generators) were counted towards coverage. The pattern now uses a character class matching either separator. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Coverage variation | ✅ +0.00% coverage variation (-1.00%) |
| Diff coverage | ✅ ∅ diff coverage |
Coverage variation details
Coverable lines Covered lines Coverage Common ancestor commit (8a28ca1) 790 363 45.95% Head commit (61b13ba) 790 (+0) 363 (+0) 45.95% (+0.00%) Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch:
<coverage of head commit> - <coverage of common ancestor commit>
Diff coverage details
Coverable lines Covered lines Diff coverage Pull request (#27) 0 0 ∅ (not applicable) Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified:
<covered lines added or modified>/<coverable lines added or modified> * 100%
AI Reviewer: first review requested successfully. AI can make mistakes. Always validate suggestions.
TIP This summary will be updated as you push new changes.
There was a problem hiding this comment.
Pull Request Overview
This PR updates the coverage.config file to ensure 'obj' directory exclusions work correctly on Linux CI runners by accounting for both forward and backward slash path separators in the regex pattern.
Codacy analysis indicates the PR is up to standards with no new quality issues or complexity increases. However, there are no tests included to verify that the regex change actually covers both Windows and Linux path formats, which could lead to regression or mismatched exclusions in different environments.
About this PR
- The update to the exclusion regex lacks corresponding automated tests to ensure that both Windows ('') and Linux ('/') path separators are matched correctly. Consider adding a test case to verify the regex logic.
Test suggestions
- Verify the regex matches Windows-style paths (e.g., project\obj\Debug\file.cs)
- Verify the regex matches Linux-style paths (e.g., project/obj/Debug/file.cs)
Prompt proposal for missing tests
Consider implementing these tests if applicable:
1. Verify the regex matches Windows-style paths (e.g., project\obj\Debug\file.cs)
2. Verify the regex matches Linux-style paths (e.g., project/obj/Debug/file.cs)
TIP Improve review quality by adding custom instructions
TIP How was this review? Give us feedback
The
coverage.configsource exclusion forobjwas written with Windows-only path separators, so on our Linux CI runners it matched nothing, and source-generated files underobj/(Refit clients, logging generators) counted towards coverage. Measured before the fix: Meraki.Api's coverage report included 29 such files, PanoramicData.OData.Client's 1.The pattern is now
.*[\\/]obj[\\/].*, which matches either separator, so it works on both the Linux runners and Windows workstations.Tracked on OPS-157454.
🤖 Generated with Claude Code