Repository navigation
Conversation
…atform xunit.v3 4.0.0 and xunit.runner.visualstudio 4.0.0 drop VSTest on the .NET 10 SDK, so global.json opts dotnet test into the Microsoft Testing Platform runner. The package bumps and global.json are coupled: neither builds and tests on its own. All three test projects move together; xunit.analyzers moves to 2.0.0 because xunit.v3 4.0.0 depends on it and the explicit 1.27.0 reference would be a downgrade (NU1605), and Microsoft.NET.Test.Sdk aligned on 18.9.0. Replaces Dependabot PRs 61, 62 and 63.
…rkflow The Microsoft Testing Platform rejects the bare dotnet test form, so the Test step names the solution with --solution; locally that runs the Unit (29) and Acceptance (9) projects, and Tests.Integration stays out because the solution does not build it in Debug. --ignore-exit-code 8 treats "zero tests ran" as a pass, where VSTest only warned; a real failure still exits 2. build.yml regenerated from the Infrastructure generator.
There was a problem hiding this comment.
🟢 Approval recommended
All reviewed changes are addressed and no unresolved blocking issues remain.
Pull request overview
Upgrades the test projects to xUnit 4 and enables Microsoft Testing Platform for local and CI test execution.
Changes:
- Updates test dependencies across all three projects.
- Configures Microsoft Testing Platform via
global.json. - Updates generated and committed CI test commands to use the solution.
File summaries
| File | Description |
|---|---|
NHSISL.CsvHelperClient.Tests.Unit/NHSISL.CsvHelperClient.Tests.Unit.csproj |
Updates unit-test packages |
NHSISL.CsvHelperClient.Tests.Integration/NHSISL.CsvHelperClient.Tests.Integration.csproj |
Updates integration-test packages |
NHSISL.CsvHelperClient.Tests.Acceptance/NHSISL.CsvHelperClient.Tests.Acceptance.csproj |
Updates acceptance-test packages |
NHSISL.CsvHelperClient.Infrastructure/Services/ScriptGenerationService.cs |
Updates generated test commands |
global.json |
Selects Microsoft Testing Platform |
.github/workflows/build.yml |
Runs solution-based tests in CI |
Review details
- Files reviewed: 6/6 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Moves all three test projects to xunit.v3 4.0.0 and xunit.runner.visualstudio 4.0.0, as agreed with Christo: upgrade as we go so there is no big gap at the .NET 11 move in November. Follows LondonDataServices.FHIR PR #183.
What changes
global.jsonoptsdotnet testinto the Microsoft Testing Platform runner. xunit 4 no longer supports VSTest on the .NET 10 SDK.--solutionand passes--ignore-exit-code 8. The platform rejects the baredotnet testform, and returns 8 when a project has no tests where VSTest only warned. Changed in the generator (ScriptGenerationService) and regenerated.Tests
Restore, build (0 errors) and the test run locally in the same shape as the workflow: Unit 29 passed, Acceptance 9 passed, 38 in total through
--solution, the same counts as on main. Tests.Integration is not built in Debug by the solution, so--solutionleaves it out exactly as the old command did; it still compiles on xunit 4.Commits
One CONFIG commit for the packages and
global.json(coupled: neither builds and tests alone), one CODE RUB commit for the workflow.Supersedes Dependabot PRs #61, #62 and #63, which bump one package at a time.
Closes AB#30527.