Skip to content

test: expand discovery coverage on .NET 11 RC2 - #27

Merged
ScottishTapWater merged 1 commit into
test/discovery-coveragefrom
test/net11-discovery-scenarios
Oct 24, 2026
Merged

ScottishTapWater merged 1 commit into
test/discovery-coveragefrom
test/net11-discovery-scenarios

Conversation

@ScottishTapWater

Copy link
Copy Markdown
Contributor

Summary

Stacked on #26 (test/discovery-coverage).

  • Upgrade the pinned SDK to .NET 11 RC2 and the test projects to net11.0; enable preview language features in compilation fixtures and package consumers.
  • Update the existing Microsoft.Build reference to the version required by the integration-test project builder on .NET 11.
  • Add discovery coverage for generic interfaces and constraints, patterns, synchronous/asynchronous iterators, and union cases.
  • Cover out variables, mutable/readonly ref returns, Span/ReadOnlySpan indexing, property/list patterns, and custom deconstruction.
  • Check concrete result dimensions and runtime values. Keep nullable-operation work for a follow-up.

Runtime and generator packages retain their netstandard2.0 targets. CI already installs the SDK pinned by global.json.

Verification

  • Solution build: zero warnings/errors.
  • Full suite: 868 passed (471 core, 395 Roslyn, 2 package integration).
  • Corrected the union rejection test's generated-source hint during review; its focused rerun passed after rebuilding.
  • Formatting verification and git diff --check passed.
  • Independent C# behaviour/adequacy and test style reviews completed with no remaining findings.

@ScottishTapWater
ScottishTapWater enabled stacked auto-merge (squash) October 24, 2026 18:04
stacked auto-merge was automatically disabled October 24, 2026 18:06

Auto-merge was disabled for another pull request in the stack

@ScottishTapWater
ScottishTapWater merged commit f1eef6b into main Oct 24, 2026
2 checks passed
@ScottishTapWater
ScottishTapWater deleted the test/net11-discovery-scenarios branch October 24, 2026 18:07
ScottishTapWater added a commit that referenced this pull request Oct 24, 2026
## Summary

Stacked on #27 (`test/net11-discovery-scenarios`).

- Discover multiplication/division with nullable quantity operands and
scalar division by a nullable quantity.
- Recognise null-conditional power helpers on intermediate quantities,
including chained calls and nested conditional receivers.
- Reuse the existing generated operators and helpers; C# supplies
nullable lifting and null propagation. Nullable type reading is opt-in
rather than changing all quantity readers.
- Preserve already-bound custom methods and keep ordinary member calls
distinct from conditional access.

## Verification

- Started with 22 regression cases: 18 failed and 4 controls passed
before implementation; all now pass.
- Full suite passed: 899 tests (471 core, 426 Roslyn, 2 package
integration).
- Added one further chained-power regression during review; the final
nullable-focused run passed all 29 cases after rebuilding.
- Build: zero warnings/errors. Formatting verification and git diff
--check passed.
- Independent C# review completed; final chain concern checked with an
executable regression.
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.

1 participant