Skip to content

build: migrate test suite to xUnit v3 and Xunit.Combinatorial v2 (#467)#472

Merged
adrianhall merged 1 commit into
CommunityToolkit:mainfrom
adrianhall:issues/467
Jun 15, 2026
Merged

build: migrate test suite to xUnit v3 and Xunit.Combinatorial v2 (#467)#472
adrianhall merged 1 commit into
CommunityToolkit:mainfrom
adrianhall:issues/467

Conversation

@adrianhall

Copy link
Copy Markdown
Collaborator
  • Replace xunit 2.9.3 with xunit.v3 3.2.2; test projects become stand-alone executables (OutputType=Exe) gated on IsTestProject.
  • Bump Xunit.Combinatorial 1.6.24 -> 2.0.24 (v2 targets xUnit v3).
  • Remove XUnit.SkippableFact (no v3 release) and unused xRetry.
  • Rewrite [SkippableFact]/[SkippableTheory] -> [Fact]/[Theory] and Skip.IfNot(...) -> Assert.SkipUnless(..., reason) using native v3 dynamic skip.
  • Remove Xunit.Abstractions usings (ITestOutputHelper now in Xunit).
  • Convert IAsyncLifetime InitializeAsync/DisposeAsync to ValueTask; fold IDisposable cleanup into DisposeAsync where both were implemented.
  • Keep VSTest path (Microsoft.NET.Test.Sdk + xunit.runner.visualstudio + coverlet) so dotnet test and XPlat Code Coverage are unchanged.

No test logic changed; no tests disabled or deleted.

Closes #467

…munityToolkit#467)

- Replace xunit 2.9.3 with xunit.v3 3.2.2; test projects become stand-alone executables (OutputType=Exe) gated on IsTestProject.
- Bump Xunit.Combinatorial 1.6.24 -> 2.0.24 (v2 targets xUnit v3).
- Remove XUnit.SkippableFact (no v3 release) and unused xRetry.
- Rewrite [SkippableFact]/[SkippableTheory] -> [Fact]/[Theory] and Skip.IfNot(...) -> Assert.SkipUnless(..., reason) using native v3 dynamic skip.
- Remove Xunit.Abstractions usings (ITestOutputHelper now in Xunit).
- Convert IAsyncLifetime InitializeAsync/DisposeAsync to ValueTask; fold IDisposable cleanup into DisposeAsync where both were implemented.
- Keep VSTest path (Microsoft.NET.Test.Sdk + xunit.runner.visualstudio + coverlet) so dotnet test and XPlat Code Coverage are unchanged.

No test logic changed; no tests disabled or deleted.
@adrianhall adrianhall merged commit cbc4e5c into CommunityToolkit:main Jun 15, 2026
5 checks passed
@adrianhall adrianhall deleted the issues/467 branch June 15, 2026 10:48
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.

Review upgrade to xUnit v3 and xUnit.Combinatorial v2

1 participant