diff --git a/CleanArchitecture.Api/CleanArchitecture.Api.csproj b/CleanArchitecture.Api/CleanArchitecture.Api.csproj
index b08148f..48f3a62 100644
--- a/CleanArchitecture.Api/CleanArchitecture.Api.csproj
+++ b/CleanArchitecture.Api/CleanArchitecture.Api.csproj
@@ -15,8 +15,8 @@
-
-
+
+
@@ -26,8 +26,8 @@
-
-
+
+
diff --git a/CleanArchitecture.AppHost/CleanArchitecture.AppHost.csproj b/CleanArchitecture.AppHost/CleanArchitecture.AppHost.csproj
index a347fcf..1acf811 100644
--- a/CleanArchitecture.AppHost/CleanArchitecture.AppHost.csproj
+++ b/CleanArchitecture.AppHost/CleanArchitecture.AppHost.csproj
@@ -10,9 +10,9 @@
-
-
-
+
+
+
diff --git a/CleanArchitecture.Application.Tests/CleanArchitecture.Application.Tests.csproj b/CleanArchitecture.Application.Tests/CleanArchitecture.Application.Tests.csproj
index ebd9ddb..4e5e330 100644
--- a/CleanArchitecture.Application.Tests/CleanArchitecture.Application.Tests.csproj
+++ b/CleanArchitecture.Application.Tests/CleanArchitecture.Application.Tests.csproj
@@ -9,12 +9,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/CleanArchitecture.Domain.Tests/CleanArchitecture.Domain.Tests.csproj b/CleanArchitecture.Domain.Tests/CleanArchitecture.Domain.Tests.csproj
index 86ca183..3698f31 100644
--- a/CleanArchitecture.Domain.Tests/CleanArchitecture.Domain.Tests.csproj
+++ b/CleanArchitecture.Domain.Tests/CleanArchitecture.Domain.Tests.csproj
@@ -10,7 +10,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/CleanArchitecture.Domain/CleanArchitecture.Domain.csproj b/CleanArchitecture.Domain/CleanArchitecture.Domain.csproj
index 1c90f1d..ac7de63 100644
--- a/CleanArchitecture.Domain/CleanArchitecture.Domain.csproj
+++ b/CleanArchitecture.Domain/CleanArchitecture.Domain.csproj
@@ -8,10 +8,10 @@
-
+
-
+
diff --git a/CleanArchitecture.Infrastructure.Tests/CleanArchitecture.Infrastructure.Tests.csproj b/CleanArchitecture.Infrastructure.Tests/CleanArchitecture.Infrastructure.Tests.csproj
index fac253f..ded8dee 100644
--- a/CleanArchitecture.Infrastructure.Tests/CleanArchitecture.Infrastructure.Tests.csproj
+++ b/CleanArchitecture.Infrastructure.Tests/CleanArchitecture.Infrastructure.Tests.csproj
@@ -9,7 +9,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/CleanArchitecture.IntegrationTests/CleanArchitecture.IntegrationTests.csproj b/CleanArchitecture.IntegrationTests/CleanArchitecture.IntegrationTests.csproj
index 5c7e97f..6f9788c 100644
--- a/CleanArchitecture.IntegrationTests/CleanArchitecture.IntegrationTests.csproj
+++ b/CleanArchitecture.IntegrationTests/CleanArchitecture.IntegrationTests.csproj
@@ -9,7 +9,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
@@ -22,12 +22,12 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
-
-
-
-
+
+
+
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all
diff --git a/CleanArchitecture.IntegrationTests/GlobalSetupFixture.cs b/CleanArchitecture.IntegrationTests/GlobalSetupFixture.cs
index 3c5bc34..9977a1a 100644
--- a/CleanArchitecture.IntegrationTests/GlobalSetupFixture.cs
+++ b/CleanArchitecture.IntegrationTests/GlobalSetupFixture.cs
@@ -1,5 +1,6 @@
using System;
using System.Threading.Tasks;
+using Microsoft.Data.SqlClient;
using Respawn;
using Testcontainers.MsSql;
using Testcontainers.RabbitMq;
@@ -52,27 +53,32 @@ public async Task TearDown()
public static async Task RespawnDatabaseAsync()
{
- if (s_respawner is null)
+ await using var connection = new SqlConnection(DatabaseConnectionString);
+
+ try
{
- try
+ await connection.OpenAsync();
+
+ if (s_respawner is null)
{
s_respawner = await Respawner.CreateAsync(
- DatabaseConnectionString,
+ connection,
new RespawnerOptions
{
TablesToIgnore = ["__EFMigrationsHistory"]
});
}
- catch (Exception ex)
- {
- // Creation of the respawner can fail if the database has not been created yet
- await TestContext.Out.WriteLineAsync($"Failed to create respawner: {ex.Message}");
- }
- }
- if (s_respawner is not null)
+ await s_respawner.ResetAsync(connection);
+ }
+ catch (Exception ex)
+ {
+ // Creation of the respawner can fail if the database has not been created yet
+ await TestContext.Out.WriteLineAsync($"Failed to respawn database: {ex.Message}");
+ }
+ finally
{
- await s_respawner.ResetAsync(DatabaseConnectionString);
+ await connection.CloseAsync();
}
}
}
\ No newline at end of file
diff --git a/CleanArchitecture.Proto/CleanArchitecture.Proto.csproj b/CleanArchitecture.Proto/CleanArchitecture.Proto.csproj
index bd36021..c33b78a 100644
--- a/CleanArchitecture.Proto/CleanArchitecture.Proto.csproj
+++ b/CleanArchitecture.Proto/CleanArchitecture.Proto.csproj
@@ -13,8 +13,8 @@
-
-
+
+
diff --git a/CleanArchitecture.ServiceDefaults/CleanArchitecture.ServiceDefaults.csproj b/CleanArchitecture.ServiceDefaults/CleanArchitecture.ServiceDefaults.csproj
index 55f4e2f..4e9e138 100644
--- a/CleanArchitecture.ServiceDefaults/CleanArchitecture.ServiceDefaults.csproj
+++ b/CleanArchitecture.ServiceDefaults/CleanArchitecture.ServiceDefaults.csproj
@@ -12,13 +12,13 @@
-
-
-
+
+
+
-
-
+
+
diff --git a/CleanArchitecture.Shared/CleanArchitecture.Shared.csproj b/CleanArchitecture.Shared/CleanArchitecture.Shared.csproj
index 0c2e7a5..1096f02 100644
--- a/CleanArchitecture.Shared/CleanArchitecture.Shared.csproj
+++ b/CleanArchitecture.Shared/CleanArchitecture.Shared.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/CleanArchitecture.gRPC.Tests/CleanArchitecture.gRPC.Tests.csproj b/CleanArchitecture.gRPC.Tests/CleanArchitecture.gRPC.Tests.csproj
index 6aa2ebc..4de5c40 100644
--- a/CleanArchitecture.gRPC.Tests/CleanArchitecture.gRPC.Tests.csproj
+++ b/CleanArchitecture.gRPC.Tests/CleanArchitecture.gRPC.Tests.csproj
@@ -8,12 +8,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+