-
Notifications
You must be signed in to change notification settings - Fork 331
Conversation
Fixes #1233. Our handling of case null didn't actually check it was only operating for a null literal in the case, so it was getting applied too broadly.
Summary by CodeRabbit
-
Tests
- Added a new test to verify handling of null and string cases in switch expressions with type refinement and nullness annotations.
-
Bug Fixes
- Enhanced nullness propagation accuracy in switch-case expressions by supplying explicit nullness information for the case operand.
WalkthroughA new unit test was added to verify correct handling of Changes
Sequence Diagram(s)
sequenceDiagram
participant TestRunner participant NullAway participant SourceCode TestRunner->>NullAway: Run caseNullTypeRefinement test NullAway->>SourceCode: Analyze switch expression with case null NullAway->>NullAway: Use explicit nullness for switch operand in equality comparison NullAway-->>TestRunner: Report analysis result (no false positive for default case) Estimated code review effort2 (Simple) | ~8 minutes Assessment against linked issues
Assessment against linked issues: Out-of-scope changesNo out-of-scope changes found. Note Unit Test Generation is now available in beta!Learn more here, or try it out under "Finishing Touches" below. Recent review detailsConfiguration used: CodeRabbit UI Files selected for processing (1)
Additional context usedCode Graph Analysis (1)nullaway/src/main/java/com/uber/nullaway/dataflow/AccessPathNullnessPropagation.java (1)
Additional comments (3)
Finishing Touches
Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Codecov Report Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1235 +/- ## ============================================ - Coverage 88.45% 88.44% -0.02% - Complexity 2372 2373 +1 ============================================ Files 90 90 Lines 7781 7786 +5 Branches 1553 1555 +2 ============================================ + Hits 6883 6886 +3 - Misses 452 453 +1 - Partials 446 447 +1 View full report in Codecov by Sentry. New features to boost your workflow:
|