diff --git a/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj b/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
index 4a9c323e58..a3bba77ffd 100644
--- a/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
+++ b/framework/src/Volo.Abp.MongoDB/Volo.Abp.MongoDB.csproj
@@ -15,7 +15,7 @@
-
+
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj b/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
index ef1ff44a00..8a936f1b17 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo.Abp.MongoDB.Tests.csproj
@@ -15,7 +15,7 @@
-
+
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
index 3d4c0468ab..ed967fdb92 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
@@ -21,14 +21,9 @@ public class AbpMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
context.Services.AddMongoDbContext(options =>
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
index c92dbbbd50..a09537dcc9 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
index 935846d662..5fae3353d2 100644
--- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
+++ b/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs
@@ -10,6 +10,7 @@ using Xunit;
namespace Volo.Abp.MongoDB.Transactions;
+[Collection(MongoTestCollection.Name)]
public class Transaction_Tests : TestAppTestBase
{
private readonly IBasicRepository _personRepository;
diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
index 592d11a480..ca021f1f1d 100644
--- a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
+++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpAuditLoggingMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
index ea7be8dd53..cd62b9a8e3 100644
--- a/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
+++ b/modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.AuditLogging.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
index 77a6dc6321..84f9f0731e 100644
--- a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
+++ b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpBackgroundJobsMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
index 45a4e14bc7..b7323afa16 100644
--- a/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
+++ b/modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.BackgroundJobs.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
index 982a389404..32a94b9642 100644
--- a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
+++ b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class BlobStoringDatabaseMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
index 875d510727..59ec4b893f 100644
--- a/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
+++ b/modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.BlobStoring.Database.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
index 41942f75d0..364aa4dc0e 100644
--- a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
+++ b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
@@ -13,14 +13,9 @@ namespace Volo.Blogging.MongoDB
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
index 6da6ba3662..ad0b0ced61 100644
--- a/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
+++ b/modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
@@ -1,22 +1,33 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
-namespace Volo.Blogging.MongoDB
+public class MongoDbFixture : IDisposable
{
- public class MongoDbFixture : IDisposable
- {
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
- static MongoDbFixture()
+ static MongoDbFixture()
+ {
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
- }
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
- public void Dispose()
- {
- MongoDbRunner?.Dispose();
- }
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
+ }
+
+ public void Dispose()
+ {
+ MongoDbRunner?.Dispose();
}
}
diff --git a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs
index ec021f9479..80ae993732 100644
--- a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs
+++ b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class CmsKitMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs
index c19a8fec82..a2d3276cc8 100644
--- a/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs
+++ b/modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.CmsKit.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs
index 5a75a6d182..f1743ef3ed 100644
--- a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs
+++ b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs
@@ -13,14 +13,9 @@ namespace Volo.Docs.MongoDB
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs
index 0f9ab7b6c9..ad0b0ced61 100644
--- a/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs
+++ b/modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs
@@ -1,22 +1,33 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
-namespace Volo.Docs.MongoDB
+public class MongoDbFixture : IDisposable
{
- public class MongoDbFixture : IDisposable
- {
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
- static MongoDbFixture()
+ static MongoDbFixture()
+ {
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
- }
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
- public void Dispose()
- {
- MongoDbRunner?.Dispose();
- }
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
+ }
+
+ public void Dispose()
+ {
+ MongoDbRunner?.Dispose();
}
}
diff --git a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs
index 88ff87128d..977c2ca3b0 100644
--- a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs
+++ b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs
@@ -12,14 +12,10 @@ public class AbpFeatureManagementMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
+
}
}
diff --git a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs
index 4b3633ed21..f2554ba128 100644
--- a/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs
+++ b/modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.FeatureManagement.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs
index 6d906f7cb4..52e8dfc9da 100644
--- a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs
+++ b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs
@@ -15,14 +15,9 @@ public class AbpIdentityMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
Configure(options =>
diff --git a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs
index 0a9752e8c5..b4dc37be97 100644
--- a/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs
+++ b/modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.Identity.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs
index f02c37668a..9e6ba2ced7 100644
--- a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs
+++ b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs
@@ -16,14 +16,10 @@ public class AbpIdentityServerMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
+
}
}
diff --git a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs
index 3237ae6921..1f70e5e19f 100644
--- a/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs
+++ b/modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.IdentityServer;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs
index 5e78fd1f6a..46e43b1f59 100644
--- a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs
+++ b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.OpenIddict.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/OpenIddictMongoDbTestModule.cs b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/OpenIddictMongoDbTestModule.cs
index 60017fc99b..700d96fd47 100644
--- a/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/OpenIddictMongoDbTestModule.cs
+++ b/modules/openiddict/test/Volo.Abp.OpenIddict.MongoDB.Tests/Volo/Abp/OpenIddict/MongoDB/OpenIddictMongoDbTestModule.cs
@@ -20,14 +20,9 @@ public class OpenIddictMongoDbTestModule : AbpModule
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- _connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = _connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
diff --git a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs
index 293a1f7c2f..7637af3ddb 100644
--- a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs
+++ b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs
@@ -12,14 +12,9 @@ public class AbpPermissionManagementMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs
index 466d61ed89..8574acc7fb 100644
--- a/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs
+++ b/modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.PermissionManagement.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs
index f64f91b1eb..b56fa203d6 100644
--- a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs
+++ b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpSettingManagementMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs
index d5cefa9a23..e894102bb5 100644
--- a/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs
+++ b/modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace Volo.Abp.SettingManagement.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs
index 308acc19d7..ffe83d9a17 100644
--- a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs
+++ b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class AbpTenantManagementMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs
index ff384c732f..47041fe3d2 100644
--- a/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs
+++ b/modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs
@@ -1,5 +1,5 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
@@ -7,13 +7,27 @@ namespace Volo.Abp.TenantManagement.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs
index bd3278ed14..a5bb209060 100644
--- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs
+++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs
@@ -1,5 +1,5 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace MyCompanyName.MyProjectName.MongoDB;
diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs
index bc60373794..889e0d2ebc 100644
--- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs
+++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs
@@ -12,14 +12,9 @@ public class MyProjectNameMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MyProjectNameMongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}
diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs
index 6956c5c231..a9b99eed3e 100644
--- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs
+++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs
@@ -1,17 +1,31 @@
using System;
-using Mongo2Go;
+using EphemeralMongo;
namespace MyCompanyName.MyProjectName.MongoDB;
public class MongoDbFixture : IDisposable
{
- private static readonly MongoDbRunner MongoDbRunner;
- public static readonly string ConnectionString;
+ public readonly static IMongoRunner MongoDbRunner;
static MongoDbFixture()
{
- MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
- ConnectionString = MongoDbRunner.ConnectionString;
+ MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
+ {
+ UseSingleNodeReplicaSet = true,
+ KillMongoProcessesWhenCurrentProcessExits = true
+ });
+ }
+
+ public static string GetRandomConnectionString()
+ {
+ return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
+ }
+
+ public static string GetConnectionString(string databaseName)
+ {
+ var stringArray = MongoDbRunner.ConnectionString.Split('?');
+ var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
+ return connectionString;
}
public void Dispose()
diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs
index 453e657435..c0e58deceb 100644
--- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs
+++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs
@@ -13,14 +13,9 @@ public class MyProjectNameMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- var stringArray = MongoDbFixture.ConnectionString.Split('?');
- var connectionString = stringArray[0].EnsureEndsWith('/') +
- "Db_" +
- Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
-
Configure(options =>
{
- options.ConnectionStrings.Default = connectionString;
+ options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
});
}
}