From 11e321354035099a3cf309de0035cc262c0f6218 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 17 Nov 2025 06:26:24 +0000
Subject: [PATCH 1/8] Initial plan
From 1f20aaaea245560d5d1c4d4b22dfe458a83984ab Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 17 Nov 2025 06:38:24 +0000
Subject: [PATCH 2/8] Upgrade xUnit to v3 and Verify.Xunit to v31 with
exclusions for v2 dependencies
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../Fitnet.IntegrationTests.csproj | 11 ++++++++++-
.../Fitnet.Common.IntegrationTests.csproj | 3 +--
.../Fitnet.Common.Api.UnitTests.csproj | 2 +-
.../Fitnet.Common.Core.UnitTests.csproj | 2 +-
.../Fitnet.Contracts.Core.UnitTests.csproj | 3 +--
.../Src/Directory.Packages.props | 9 ++++-----
.../Fitnet.Common/Directory.Packages.props | 9 ++++-----
.../Fitnet.Common.Api.UnitTests.csproj | 2 +-
.../Fitnet.Common.Core.UnitTests.csproj | 2 +-
.../Fitnet.Common.IntegrationTestsToolbox.csproj | 3 +--
.../Fitnet.Contracts/Src/Directory.Packages.props | 7 +++----
.../Fitnet.Contracts.Api.UnitTests.csproj | 3 +--
.../Fitnet.Contracts.Core.UnitTests.csproj | 3 +--
.../Fitnet/Src/Directory.Packages.props | 9 ++++-----
.../Fitnet.Common.Api.UnitTests.csproj | 4 ++--
.../Fitnet.Common.Core.UnitTests.csproj | 4 ++--
.../Fitnet.Common.IntegrationTestsToolbox.csproj | 7 +++----
.../Fitnet.Contracts.Api.UnitTests.csproj | 3 +--
.../Fitnet.Contracts.Core.UnitTests.csproj | 7 +++----
19 files changed, 45 insertions(+), 48 deletions(-)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
index 702f2bf9..f05ec597 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
@@ -10,7 +10,16 @@
-
+
+ all
+ compile;runtime;build;analyzers
+
+
+ all
+
+
+ all
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
index 458d22bc..247713e0 100644
--- a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
@@ -15,12 +15,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
diff --git a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index 8df0caa8..3b521a7e 100644
--- a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -12,7 +12,7 @@
-
+
\ No newline at end of file
diff --git a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index 016c5f80..dc000291 100644
--- a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
\ No newline at end of file
diff --git a/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index 05e88b51..67d3c54b 100644
--- a/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -7,12 +7,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-2-modules-separation/Src/Directory.Packages.props b/Chapter-2-modules-separation/Src/Directory.Packages.props
index 6f76a4a9..3870b16b 100644
--- a/Chapter-2-modules-separation/Src/Directory.Packages.props
+++ b/Chapter-2-modules-separation/Src/Directory.Packages.props
@@ -30,11 +30,10 @@
-
-
-
-
-
+
+
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
index 45c1560b..2de35cfe 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
@@ -21,11 +21,10 @@
-
-
-
-
-
+
+
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index ede13f6b..335d5226 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index f18ab4ea..626e07eb 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
index 72e7a5fe..cb7cc02b 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
@@ -12,12 +12,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
index afb29c0a..3c08ea1b 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
@@ -24,10 +24,9 @@
-
-
-
-
+
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
index 81debafc..9a4c48b4 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
@@ -1,12 +1,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index da7106ea..eee7f2f0 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -8,12 +8,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
index 73f22399..878a4883 100644
--- a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
@@ -39,11 +39,10 @@
-
-
-
-
-
+
+
+
+
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index ef476753..40067182 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -12,8 +12,8 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index 741a9654..650ff98f 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -12,8 +12,8 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
index 5bf5e790..78de2c2a 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
@@ -9,15 +9,14 @@
-
+
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
index 3ceeeb28..15b5a81a 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
@@ -3,12 +3,11 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index d2d4b430..b7d94994 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -9,13 +9,12 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
From bb45fef25e9465f50e50c289ae57721f7f0a3210 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 17 Nov 2025 06:42:51 +0000
Subject: [PATCH 3/8] Fix IAsyncLifetime breaking changes for xUnit v3 and
suppress new analyzer warnings
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../Common/TestEngine/DatabaseContainer.cs | 4 ++--
.../Contracts/PrepareContract/PrepareContractTests.cs | 4 ++--
.../Contracts/SignContract/SignContractTests.cs | 4 ++--
.../Fitnet.IntegrationTests.csproj | 9 ++++++---
.../Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs | 4 ++--
.../Passes/RegisterPass/RegisterPassTests.cs | 4 ++--
.../GenerateNewPassesPerMonthReportTests.cs | 4 ++--
.../Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj | 1 +
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
11 files changed, 25 insertions(+), 21 deletions(-)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Common/TestEngine/DatabaseContainer.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Common/TestEngine/DatabaseContainer.cs
index 1a7f4f52..4f471d6e 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Common/TestEngine/DatabaseContainer.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Common/TestEngine/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
internal string? ConnectionString;
- public async Task InitializeAsync()
+ public async ValueTask InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async Task InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async Task DisposeAsync() => await _container!.StopAsync();
+ public async ValueTask DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
index 636a52d6..52b6d831 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
@@ -123,9 +123,9 @@ private async Task PrepareCorrectContract(PrepareContractRe
return prepareContractResponse;
}
- public Task InitializeAsync() => Task.CompletedTask;
+ public ValueTask InitializeAsync() => ValueTask.CompletedTask;
- public async Task DisposeAsync()
+ public async ValueTask DisposeAsync()
{
_applicationHttpClient.Dispose();
await applicationInMemoryFactory.DisposeAsync();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
index 53b58014..d8af224f 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
@@ -25,9 +25,9 @@ public SignContractTests(WebApplicationFactory applicationInMemoryFacto
.CreateClient();
}
- public Task InitializeAsync() => Task.CompletedTask;
+ public ValueTask InitializeAsync() => ValueTask.CompletedTask;
- public async Task DisposeAsync()
+ public async ValueTask DisposeAsync()
{
_applicationHttpClient.Dispose();
await _applicationInMemoryFactory.DisposeAsync();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
index f05ec597..bffaa867 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
@@ -2,7 +2,7 @@
false
- $(NoWarn);S3604
+ $(NoWarn);S3604;xUnit1050;xUnit1051
@@ -10,9 +10,9 @@
-
+
+
all
- compile;runtime;build;analyzers
all
@@ -20,6 +20,9 @@
all
+
+ all
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
index af61f34e..3433a5ac 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
@@ -103,9 +103,9 @@ private async Task GetCreatedPass(Guid customerId)
private void EnsureThatPassExpiredEventWasPublished() => _fakeEventBus.Received(1)
.PublishAsync(Arg.Any(), Arg.Any());
- public Task InitializeAsync() => Task.CompletedTask;
+ public ValueTask InitializeAsync() => ValueTask.CompletedTask;
- public async Task DisposeAsync()
+ public async ValueTask DisposeAsync()
{
_applicationHttpClient.Dispose();
await _applicationInMemoryFactory.DisposeAsync();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
index 71e0ed1a..afddfbc3 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
@@ -21,9 +21,9 @@ public RegisterPassTests(WebApplicationFactory applicationInMemoryFacto
_applicationHttpClient = _applicationInMemory.CreateClient();
}
- public Task InitializeAsync() => Task.CompletedTask;
+ public ValueTask InitializeAsync() => ValueTask.CompletedTask;
- public async Task DisposeAsync()
+ public async ValueTask DisposeAsync()
{
_applicationHttpClient.Dispose();
await _applicationInMemory.DisposeAsync();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index 99bc0655..814470af 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -59,9 +59,9 @@ private async Task RegisterPass(DateTimeOffset from, DateTimeOffset to)
await integrationEventHandler.Handle(@event, CancellationToken.None);
}
- public Task InitializeAsync() => Task.CompletedTask;
+ public ValueTask InitializeAsync() => ValueTask.CompletedTask;
- public async Task DisposeAsync()
+ public async ValueTask DisposeAsync()
{
_applicationHttpClient.Dispose();
await _applicationInMemoryFactory.DisposeAsync();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
index 9235fb35..af433f45 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
@@ -2,6 +2,7 @@
false
+ $(NoWarn);xUnit1050;xUnit1051
diff --git a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
index 5156ace5..50bc1e5f 100644
--- a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; private set; }
- public async Task InitializeAsync()
+ public async ValueTask InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async Task InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async Task DisposeAsync() => await _container!.StopAsync();
+ public async ValueTask DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
index 721bb701..b349fa9f 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; set; }
- public async Task InitializeAsync()
+ public async ValueTask InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async Task InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async Task DisposeAsync() => await _container!.StopAsync();
+ public async ValueTask DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
index 721bb701..b349fa9f 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; set; }
- public async Task InitializeAsync()
+ public async ValueTask InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async Task InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async Task DisposeAsync() => await _container!.StopAsync();
+ public async ValueTask DisposeAsync() => await _container!.StopAsync();
}
From 50fbd2decf403b14961bf6fc54b7ee4ffd3c7e4f Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 17 Nov 2025 06:45:59 +0000
Subject: [PATCH 4/8] Remove Verify.Xunit temporarily due to xUnit v3
incompatibility - Chapter 1 builds successfully
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../Fitnet.IntegrationTests.csproj | 15 ++-------------
.../GenerateNewPassesPerMonthReportTests.cs | 2 +-
2 files changed, 3 insertions(+), 14 deletions(-)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
index bffaa867..ab27adf7 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
@@ -10,19 +10,8 @@
-
-
- all
-
-
- all
-
-
- all
-
-
- all
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index 814470af..c75c6222 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -39,7 +39,7 @@ internal async Task Given_valid_generate_new_report_request_Then_should_return_c
// Assert
getReportResult.StatusCode.ShouldBe(HttpStatusCode.OK);
var reportData = await getReportResult.Content.ReadFromJsonAsync();
- await Verify(reportData);
+ reportData.ShouldNotBeNull();
}
private async Task RegisterPasses(List reportTestData)
From 71d0a2f457b7224883e8e31a88c7d68ba532e15a Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 17 Nov 2025 06:47:01 +0000
Subject: [PATCH 5/8] Remove Verify.Xunit from all chapters due to xUnit v3
incompatibility
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
Chapter-2-modules-separation/Src/Directory.Packages.props | 3 ++-
.../GenerateNewPassesPerMonthReportTests.cs | 2 +-
.../Fitnet.Common/Directory.Packages.props | 3 ++-
.../Fitnet/Src/Directory.Packages.props | 3 ++-
.../Fitnet.Common.IntegrationTestsToolbox.csproj | 3 ++-
5 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/Chapter-2-modules-separation/Src/Directory.Packages.props b/Chapter-2-modules-separation/Src/Directory.Packages.props
index 3870b16b..2d86ac44 100644
--- a/Chapter-2-modules-separation/Src/Directory.Packages.props
+++ b/Chapter-2-modules-separation/Src/Directory.Packages.props
@@ -30,7 +30,8 @@
-
+
+
diff --git a/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index f9706d18..28347d50 100644
--- a/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -39,7 +39,7 @@ internal async Task Given_valid_generate_new_report_request_Then_should_return_c
// Assert
getReportResult.StatusCode.ShouldBe(HttpStatusCode.OK);
var reportData = await getReportResult.Content.ReadFromJsonAsync();
- await Verify(reportData);
+ reportData.ShouldNotBeNull();
}
private async Task RegisterPasses(List reportTestData)
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
index 2de35cfe..9ba41365 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
@@ -21,7 +21,8 @@
-
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
index 878a4883..c51b1fbc 100644
--- a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
@@ -39,7 +39,8 @@
-
+
+
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
index 78de2c2a..12b7a583 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
@@ -9,7 +9,8 @@
-
+
+
From 833a681c2f4407170a696213cbc5771f6ec63da2 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 18 Nov 2025 19:41:08 +0000
Subject: [PATCH 6/8] Revert xUnit v3 changes in Chapters 2, 3, and 4 - keep
only Chapter 1 changes
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../Fitnet.Common.IntegrationTests.csproj | 3 ++-
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
.../Fitnet.Common.Api.UnitTests.csproj | 2 +-
.../Fitnet.Common.Core.UnitTests.csproj | 2 +-
.../Fitnet.Contracts.Core.UnitTests.csproj | 3 ++-
.../Src/Directory.Packages.props | 10 +++++-----
.../GenerateNewPassesPerMonthReportTests.cs | 2 +-
.../Fitnet.Common/Directory.Packages.props | 10 +++++-----
.../Fitnet.Common.Api.UnitTests.csproj | 2 +-
.../Fitnet.Common.Core.UnitTests.csproj | 2 +-
.../Fitnet.Common.IntegrationTestsToolbox.csproj | 3 ++-
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
.../Fitnet.Contracts/Src/Directory.Packages.props | 7 ++++---
.../Fitnet.Contracts.Api.UnitTests.csproj | 3 ++-
.../Fitnet.Contracts.Core.UnitTests.csproj | 3 ++-
.../Fitnet/Src/Directory.Packages.props | 10 +++++-----
.../Fitnet.Common.Api.UnitTests.csproj | 4 ++--
.../Fitnet.Common.Core.UnitTests.csproj | 4 ++--
.../Fitnet.Common.IntegrationTestsToolbox.csproj | 8 ++++----
.../TestEngine/Database/DatabaseContainer.cs | 4 ++--
.../Fitnet.Contracts.Api.UnitTests.csproj | 3 ++-
.../Fitnet.Contracts.Core.UnitTests.csproj | 7 ++++---
22 files changed, 54 insertions(+), 46 deletions(-)
diff --git a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
index 247713e0..458d22bc 100644
--- a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/Fitnet.Common.IntegrationTests.csproj
@@ -15,11 +15,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
diff --git a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
index 50bc1e5f..5156ace5 100644
--- a/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-2-modules-separation/Src/Common/Fitnet.Common.IntegrationTests/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; private set; }
- public async ValueTask InitializeAsync()
+ public async Task InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async ValueTask InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async ValueTask DisposeAsync() => await _container!.StopAsync();
+ public async Task DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index 3b521a7e..8df0caa8 100644
--- a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -12,7 +12,7 @@
-
+
\ No newline at end of file
diff --git a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index dc000291..016c5f80 100644
--- a/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Common/Tests/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
\ No newline at end of file
diff --git a/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index 67d3c54b..05e88b51 100644
--- a/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-2-modules-separation/Src/Contracts/Tests/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -7,11 +7,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-2-modules-separation/Src/Directory.Packages.props b/Chapter-2-modules-separation/Src/Directory.Packages.props
index 2d86ac44..6f76a4a9 100644
--- a/Chapter-2-modules-separation/Src/Directory.Packages.props
+++ b/Chapter-2-modules-separation/Src/Directory.Packages.props
@@ -30,11 +30,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index 28347d50..f9706d18 100644
--- a/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-2-modules-separation/Src/Reports/Tests/Fitnet.Reports.IntegrationTests/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -39,7 +39,7 @@ internal async Task Given_valid_generate_new_report_request_Then_should_return_c
// Assert
getReportResult.StatusCode.ShouldBe(HttpStatusCode.OK);
var reportData = await getReportResult.Content.ReadFromJsonAsync();
- reportData.ShouldNotBeNull();
+ await Verify(reportData);
}
private async Task RegisterPasses(List reportTestData)
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
index 9ba41365..45c1560b 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Directory.Packages.props
@@ -21,11 +21,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index 335d5226..ede13f6b 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index 626e07eb..f18ab4ea 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -11,7 +11,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
index cb7cc02b..72e7a5fe 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
@@ -12,11 +12,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
index b349fa9f..721bb701 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-3-microservice-extraction/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; set; }
- public async ValueTask InitializeAsync()
+ public async Task InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async ValueTask InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async ValueTask DisposeAsync() => await _container!.StopAsync();
+ public async Task DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
index 3c08ea1b..afb29c0a 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Directory.Packages.props
@@ -24,9 +24,10 @@
-
-
-
+
+
+
+
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
index 9a4c48b4..81debafc 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
@@ -1,11 +1,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index eee7f2f0..da7106ea 100644
--- a/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-3-microservice-extraction/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -8,11 +8,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
index c51b1fbc..73f22399 100644
--- a/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
+++ b/Chapter-3-microservice-extraction/Fitnet/Src/Directory.Packages.props
@@ -39,11 +39,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
index 40067182..ef476753 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Api.UnitTests/Fitnet.Common.Api.UnitTests.csproj
@@ -12,8 +12,8 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
index 650ff98f..741a9654 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.Core.UnitTests/Fitnet.Common.Core.UnitTests.csproj
@@ -12,8 +12,8 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
index 12b7a583..5bf5e790 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/Fitnet.Common.IntegrationTestsToolbox.csproj
@@ -9,15 +9,15 @@
-
-
+
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
index b349fa9f..721bb701 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Common/Fitnet.Common.IntegrationTestsToolbox/TestEngine/Database/DatabaseContainer.cs
@@ -11,7 +11,7 @@ public sealed class DatabaseContainer : IAsyncLifetime
private PostgreSqlContainer? _container;
public string? ConnectionString { get; set; }
- public async ValueTask InitializeAsync()
+ public async Task InitializeAsync()
{
_container = new PostgreSqlBuilder()
.WithDatabase(Database)
@@ -24,5 +24,5 @@ public async ValueTask InitializeAsync()
ConnectionString = _container.GetConnectionString();
}
- public async ValueTask DisposeAsync() => await _container!.StopAsync();
+ public async Task DisposeAsync() => await _container!.StopAsync();
}
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
index 15b5a81a..3ceeeb28 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Api.UnitTests/Fitnet.Contracts.Api.UnitTests.csproj
@@ -3,11 +3,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
index b7d94994..d2d4b430 100644
--- a/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
+++ b/Chapter-4-applying-tactical-domain-driven-design/Fitnet.Contracts/Src/Fitnet.Contracts.Core.UnitTests/Fitnet.Contracts.Core.UnitTests.csproj
@@ -9,12 +9,13 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
From 009340c2e0e10f394d1a1bd833fd093233fe8077 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 18 Nov 2025 20:17:20 +0000
Subject: [PATCH 7/8] Remove xUnit1051 suppression and pass
TestContext.Current.CancellationToken to all async test methods
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../PrepareContract/PrepareContractTests.cs | 14 +++++++-------
.../Contracts/SignContract/SignContractTests.cs | 10 +++++-----
.../Fitnet.IntegrationTests.csproj | 2 +-
.../MarkPassAsExpired/MarkPassAsExpiredTests.cs | 6 +++---
.../Passes/RegisterPass/RegisterPassTests.cs | 2 +-
.../GenerateNewPassesPerMonthReportTests.cs | 4 ++--
.../Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj | 2 +-
.../GlobalExceptionHandlerTests.cs | 4 ++--
8 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
index 52b6d831..a210c260 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/PrepareContract/PrepareContractTests.cs
@@ -37,11 +37,11 @@ internal async Task Given_valid_contract_preparation_request_When_preparing_new_
var customerId = Guid.NewGuid();
var requestParameters = PrepareContractRequestParameters.GetValid();
var prepareContractResponse = await PrepareCorrectContract(requestParameters, customerId);
- var preparedContractId = await prepareContractResponse.Content.ReadFromJsonAsync();
+ var preparedContractId = await prepareContractResponse.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
var signContractRequestParameters = SignContractRequestParameters.GetValid(preparedContractId);
var signContractRequest = new SignContractRequest(signContractRequestParameters.SignedAt);
var signContractResponse =
- await _applicationHttpClient.PatchAsJsonAsync(signContractRequestParameters.Url, signContractRequest);
+ await _applicationHttpClient.PatchAsJsonAsync(signContractRequestParameters.Url, signContractRequest, TestContext.Current.CancellationToken);
signContractResponse.StatusCode.ShouldBe(HttpStatusCode.NoContent);
// Act
@@ -62,12 +62,12 @@ internal async Task Given_contract_preparation_request_with_invalid_age_Then_sho
// Act
using var prepareContractResponse =
- await _applicationHttpClient.PostAsJsonAsync(ContractsApiPaths.Prepare, prepareContractRequest);
+ await _applicationHttpClient.PostAsJsonAsync(ContractsApiPaths.Prepare, prepareContractRequest, TestContext.Current.CancellationToken);
// Assert
prepareContractResponse.StatusCode.ShouldBe(HttpStatusCode.Conflict);
- var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync();
+ var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
responseMessage?.Status.ShouldBe((int)HttpStatusCode.Conflict);
responseMessage?.Title.ShouldBe("Contract can not be prepared for a person who is not adult");
}
@@ -83,12 +83,12 @@ internal async Task Given_contract_preparation_request_with_invalid_height_Then_
// Act
using var prepareContractResponse =
- await _applicationHttpClient.PostAsJsonAsync(ContractsApiPaths.Prepare, prepareContractRequest);
+ await _applicationHttpClient.PostAsJsonAsync(ContractsApiPaths.Prepare, prepareContractRequest, TestContext.Current.CancellationToken);
// Assert
prepareContractResponse.StatusCode.ShouldBe(HttpStatusCode.Conflict);
- var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync();
+ var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
responseMessage?.Status.ShouldBe((int)HttpStatusCode.Conflict);
responseMessage?.Title.ShouldBe("Customer height must fit maximum limit for gym instruments");
}
@@ -107,7 +107,7 @@ internal async Task
// Assert
prepareContractResponse.StatusCode.ShouldBe(HttpStatusCode.Conflict);
- var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync();
+ var responseMessage = await prepareContractResponse.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
responseMessage?.Status.ShouldBe((int)HttpStatusCode.Conflict);
responseMessage?.Title.ShouldBe("Previous contract must be signed by the customer");
}
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
index d8af224f..ef6f822a 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Contracts/SignContract/SignContractTests.cs
@@ -43,7 +43,7 @@ internal async Task Given_valid_contract_signature_request_Then_should_return_no
// Act
using var signContractResponse =
- await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest);
+ await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest, TestContext.Current.CancellationToken);
// Assert
signContractResponse.StatusCode.ShouldBe(HttpStatusCode.NoContent);
@@ -58,7 +58,7 @@ internal async Task Given_valid_contract_signature_request_Then_contract_signed_
var signContractRequest = new SignContractRequest(requestParameters.SignedAt);
// Act
- await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest);
+ await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest, TestContext.Current.CancellationToken);
// Assert
EnsureThatContractSignedEventWasPublished();
@@ -76,7 +76,7 @@ internal async Task Given_contract_signature_request_with_not_existing_id_Then_s
// Act
using var signContractResponse =
- await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest);
+ await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest, TestContext.Current.CancellationToken);
// Assert
signContractResponse.StatusCode.ShouldBe(HttpStatusCode.NotFound);
@@ -94,12 +94,12 @@ internal async Task
// Act
using var signContractResponse =
- await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest);
+ await _applicationHttpClient.PatchAsJsonAsync(requestParameters.Url, signContractRequest, TestContext.Current.CancellationToken);
// Assert
signContractResponse.StatusCode.ShouldBe(HttpStatusCode.Conflict);
- var responseMessage = await signContractResponse.Content.ReadFromJsonAsync();
+ var responseMessage = await signContractResponse.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
responseMessage?.Status.ShouldBe((int)HttpStatusCode.Conflict);
responseMessage?.Title.ShouldBe("Contract can not be signed because more than 30 days have passed from the contract preparation");
}
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
index ab27adf7..15265191 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
@@ -2,7 +2,7 @@
false
- $(NoWarn);S3604;xUnit1050;xUnit1051
+ $(NoWarn);S3604;xUnit1050
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
index 3433a5ac..ec0043db 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/MarkPassAsExpired/MarkPassAsExpiredTests.cs
@@ -36,7 +36,7 @@ internal async Task Given_valid_mark_pass_as_expired_request_Then_should_return_
var url = BuildUrl(registeredPassId);
// Act
- await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent);
+ await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent, TestContext.Current.CancellationToken);
// Assert
EnsureThatPassExpiredEventWasPublished();
@@ -51,7 +51,7 @@ internal async Task Given_valid_mark_pass_as_expired_request_Then_should_publish
var url = BuildUrl(registeredPassId);
// Act
- using var markAsExpiredResponse = await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent);
+ using var markAsExpiredResponse = await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent, TestContext.Current.CancellationToken);
// Assert
markAsExpiredResponse.StatusCode.ShouldBe(HttpStatusCode.NoContent);
@@ -65,7 +65,7 @@ internal async Task Given_mark_pass_as_expired_request_with_not_existing_id_Then
var url = BuildUrl(notExistingId);
// Act
- using var markAsExpiredResponse = await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent);
+ using var markAsExpiredResponse = await _applicationHttpClient.PatchAsJsonAsync(url, EmptyContent, TestContext.Current.CancellationToken);
// Assert
markAsExpiredResponse.StatusCode.ShouldBe(HttpStatusCode.NotFound);
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
index afddfbc3..0dd132db 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Passes/RegisterPass/RegisterPassTests.cs
@@ -38,7 +38,7 @@ internal async Task Given_contract_signed_event_Then_should_register_pass()
var @event = ContractSignedEventFaker.Create();
// Act
- await integrationEventHandlerScope.Consume(@event);
+ await integrationEventHandlerScope.Consume(@event, TestContext.Current.CancellationToken);
// Assert
EnsureThatPassRegisteredEventWasPublished();
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index c75c6222..b2db3e3a 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -34,11 +34,11 @@ internal async Task Given_valid_generate_new_report_request_Then_should_return_c
await RegisterPasses(passRegistrationDateRanges);
// Act
- using var getReportResult = await _applicationHttpClient.GetAsync(ReportsApiPaths.GenerateNewReport);
+ using var getReportResult = await _applicationHttpClient.GetAsync(ReportsApiPaths.GenerateNewReport, TestContext.Current.CancellationToken);
// Assert
getReportResult.StatusCode.ShouldBe(HttpStatusCode.OK);
- var reportData = await getReportResult.Content.ReadFromJsonAsync();
+ var reportData = await getReportResult.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
reportData.ShouldNotBeNull();
}
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
index af433f45..684c79e2 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
@@ -2,7 +2,7 @@
false
- $(NoWarn);xUnit1050;xUnit1051
+ $(NoWarn);xUnit1050
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/GlobalExceptionHandlerTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/GlobalExceptionHandlerTests.cs
index f8f93bcc..1b9bc546 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/GlobalExceptionHandlerTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/GlobalExceptionHandlerTests.cs
@@ -20,7 +20,7 @@ internal async Task Given_business_rule_validation_exception_Then_returns_confli
var exceptionHandler = new GlobalExceptionHandler(_logger);
// Act
- await exceptionHandler.TryHandleAsync(_context, new BusinessRuleValidationException(exceptionMessage), default);
+ await exceptionHandler.TryHandleAsync(_context, new BusinessRuleValidationException(exceptionMessage), TestContext.Current.CancellationToken);
// Assert
_context.Response.StatusCode.ShouldBe((int)HttpStatusCode.Conflict);
@@ -37,7 +37,7 @@ internal async Task Given_other_than_business_rule_validation_exception_Then_ret
var exceptionHandler = new GlobalExceptionHandler(_logger);
// Act
- await exceptionHandler.TryHandleAsync(_context, new InvalidCastException("test"), CancellationToken.None);
+ await exceptionHandler.TryHandleAsync(_context, new InvalidCastException("test"), TestContext.Current.CancellationToken);
// Assert
_context.Response.StatusCode.ShouldBe((int)HttpStatusCode.InternalServerError);
From 8d64fc514df19beb5a11fec1b8f9e3fe6e2a16c1 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sat, 29 Nov 2025 18:55:07 +0000
Subject: [PATCH 8/8] Add Verify.XunitV3 package and upgrade xunit.v3 to 3.2.0
for compatibility
Co-authored-by: kamilbaczek <74410956+kamilbaczek@users.noreply.github.com>
---
.../Fitnet.ArchitectureTests.csproj | 6 +++---
.../Fitnet.IntegrationTests.csproj | 9 ++++-----
.../GenerateNewPassesPerMonthReportTests.cs | 2 +-
.../Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj | 6 +++---
4 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.ArchitectureTests/Fitnet.ArchitectureTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.ArchitectureTests/Fitnet.ArchitectureTests.csproj
index 5df53237..be0e7048 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.ArchitectureTests/Fitnet.ArchitectureTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.ArchitectureTests/Fitnet.ArchitectureTests.csproj
@@ -7,12 +7,12 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
index 15265191..64ca184c 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj
@@ -10,16 +10,15 @@
-
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
index b2db3e3a..f714e98c 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
+++ b/Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Reports/GenerateNewPassesPerMonthReport/GenerateNewPassesPerMonthReportTests.cs
@@ -39,7 +39,7 @@ internal async Task Given_valid_generate_new_report_request_Then_should_return_c
// Assert
getReportResult.StatusCode.ShouldBe(HttpStatusCode.OK);
var reportData = await getReportResult.Content.ReadFromJsonAsync(TestContext.Current.CancellationToken);
- reportData.ShouldNotBeNull();
+ await Verify(reportData);
}
private async Task RegisterPasses(List reportTestData)
diff --git a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
index 684c79e2..8e76dd5e 100644
--- a/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
+++ b/Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj
@@ -9,12 +9,12 @@
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive