Skip to content

Use == or != when comparing Nullable<T> against constants#3129

Merged
jnyrup merged 1 commit intofluentassertions:mainfrom
jnyrup:match_true
Dec 5, 2025
Merged

Use == or != when comparing Nullable<T> against constants#3129
jnyrup merged 1 commit intofluentassertions:mainfrom
jnyrup:match_true

Conversation

@jnyrup
Copy link
Member

@jnyrup jnyrup commented Dec 3, 2025

using == instead of is when comparing a Nullable<T> against a constant generates both better IL and assembly.
SharpLab

Roslyn has an open issue about this.

IMPORTANT

  • If the PR touches the public API, the changes have been approved in a separate issue with the "api-approved" label.
  • The code complies with the Coding Guidelines for C#.
  • The changes are covered by unit tests which follow the Arrange-Act-Assert syntax and the naming conventions such as is used in these tests.
  • If the PR adds a feature or fixes a bug, please update the release notes with a functional description that explains what the change means to consumers of this library, which are published on the website.
  • If the PR changes the public API the changes needs to be included by running AcceptApiChanges.ps1 or AcceptApiChanges.sh.
  • If the PR affects the documentation, please include your changes in this pull request so the documentation will appear on the website.
    • Please also run ./build.sh --target spellcheck or .\build.ps1 --target spellcheck before pushing and check the good outcome

CONTRIBUTOR LICENSE GRANT

By submitting this contribution, the contributor hereby irrevocably grants to the project owners and maintainers a perpetual, worldwide, royalty-free, irrevocable license to use, reproduce, modify, distribute, sublicense, and create derivative works of the contribution for any purpose and under any terms, including proprietary licensing.

The contributor waives any moral rights in the contribution to the extent permitted by law and agrees not to assert any claim of authorship or control over the contribution. The contributor represents that they are the sole author of the contribution and that it is provided free of any third-party claims.

The contributor understands and agrees that the maintainers may, at their sole discretion, use, license, or redistribute the contribution as part of any work and under any terms they choose, without further permission or attribution.

  • I have read the Contributor License Grant and accept the conditions
  • I'm interested in a free license for Fluent Assertions and will share my email address through [email protected]

@coveralls
Copy link

Pull Request Test Coverage Report for Build 19902230557

Details

  • 6 of 6 (100.0%) changed or added relevant lines in 3 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.002%) to 97.163%

Totals Coverage Status
Change from base Build 19871750788: -0.002%
Covered Lines: 12824
Relevant Lines: 13042

💛 - Coveralls

@github-actions
Copy link

github-actions bot commented Dec 3, 2025

Qodana for .NET

It seems all right 👌

No new problems were found according to the checks applied

💡 Qodana analysis was run in the pull request mode: only the changed files were checked
☁️ View the detailed Qodana report

Contact Qodana team

Contact us at [email protected]

@jnyrup
Copy link
Member Author

jnyrup commented Dec 3, 2025

^^ The lower coverage is just because we have less code now.
We cover the same lines as before.

@jnyrup jnyrup merged commit 134f8d1 into fluentassertions:main Dec 5, 2025
8 checks passed
@jnyrup jnyrup deleted the match_true branch December 5, 2025 08:59
This was referenced Mar 16, 2026
This was referenced Mar 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants