From 4b2fe6ae4822d882b9c25809ef10c6b450c83601 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Wed, 16 Sep 2020 00:35:12 +0800 Subject: [PATCH] Disable mongodb unit test transaction --- .../Volo/Abp/MongoDB/AbpMongoDbTestModule.cs | 18 ++-- .../Volo/Abp/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/Transactions/Transaction_Tests.cs | 96 ------------------- .../AbpAuditLoggingMongoDbTestModule.cs | 22 ++--- .../AuditLogging/MongoDB/MongoDbFixture.cs | 2 +- .../AbpBackgroundJobsMongoDbTestModule.cs | 24 ++--- .../BackgroundJobs/MongoDB/MongoDbFixture.cs | 2 +- .../BlobStoringDatabaseMongoDbTestModule.cs | 28 +++--- .../MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/BloggingMongoDBTestModule.cs | 28 +++--- .../Volo/Blogging/MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/CmsKitMongoDbTestModule.cs | 28 +++--- .../MongoDB/MongoDbFixture.cs | 2 +- .../Docs/MongoDB/DocsMongoDBTestModule.cs | 28 +++--- .../Volo/Docs/MongoDB/MongoDbFixture.cs | 2 +- .../AbpFeatureManagementMongoDbTestModule.cs | 22 ++--- .../MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/AbpIdentityMongoDbTestModule.cs | 28 +++--- .../Abp/Identity/MongoDB/MongoDbFixture.cs | 2 +- .../AbpIdentityServerMongoDbTestModule.cs | 22 ++--- .../Volo/Abp/IdentityServer/MongoDbFixture.cs | 2 +- ...bpPermissionManagementMongoDbTestModule.cs | 28 +++--- .../MongoDb/MongoDbFixture.cs | 2 +- .../AbpSettingManagementMongoDbTestModule.cs | 22 ++--- .../MongoDB/MongoDbFixture.cs | 2 +- .../AbpTenantManagementMongoDbTestModule.cs | 22 ++--- .../MongoDb/MongoDbFixture.cs | 2 +- .../MongoDb/MyProjectNameMongoDbFixture.cs | 2 +- .../MongoDb/MyProjectNameMongoDbTestModule.cs | 21 ++-- .../MongoDB/MongoDbFixture.cs | 2 +- .../MongoDB/MyProjectNameMongoDbTestModule.cs | 21 ++-- 31 files changed, 145 insertions(+), 343 deletions(-) delete mode 100644 framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs 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 17c46796f2..8ec0b026cd 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 @@ -9,6 +9,7 @@ using Volo.Abp.Modularity; using Volo.Abp.TestApp; using Volo.Abp.TestApp.Domain; using Volo.Abp.TestApp.MongoDB; +using Volo.Abp.Uow; namespace Volo.Abp.MongoDB { @@ -20,11 +21,9 @@ namespace Volo.Abp.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { @@ -37,13 +36,10 @@ namespace Volo.Abp.MongoDB options.AddRepository(); }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 ee0de2b459..3fa239ebbb 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 deleted file mode 100644 index 3bfcf96cf7..0000000000 --- a/framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/Transactions/Transaction_Tests.cs +++ /dev/null @@ -1,96 +0,0 @@ -using System; -using System.Threading.Tasks; -using Microsoft.Extensions.DependencyInjection; -using Shouldly; -using Volo.Abp.Domain.Repositories; -using Volo.Abp.TestApp.Domain; -using Volo.Abp.TestApp.Testing; -using Volo.Abp.Uow; -using Xunit; - -namespace Volo.Abp.MongoDB.Transactions -{ - [Collection(MongoTestCollection.Name)] - public class Transaction_Tests : TestAppTestBase - { - - private readonly IBasicRepository _personRepository; - private readonly IBasicRepository _cityRepository; - private readonly IUnitOfWorkManager _unitOfWorkManager; - - public Transaction_Tests() - { - _personRepository = ServiceProvider.GetRequiredService>(); - _cityRepository = ServiceProvider.GetRequiredService>(); - _unitOfWorkManager = ServiceProvider.GetRequiredService(); - } - - [Fact] - public async Task Should_Rollback_Transaction_When_An_Exception_Is_Thrown() - { - var personId = Guid.NewGuid(); - const string exceptionMessage = "thrown to rollback the transaction!"; - - try - { - await WithUnitOfWorkAsync(new AbpUnitOfWorkOptions {IsTransactional = true}, async () => - { - await _personRepository.InsertAsync(new Person(personId, "Adam", 42)); - throw new Exception(exceptionMessage); - }); - } - catch (Exception e) when (e.Message == exceptionMessage) - { - - } - - var person = await _personRepository.FindAsync(personId); - person.ShouldBeNull(); - } - - [Fact] - public async Task Should_Rollback_Transaction_Manually() - { - var personId = Guid.NewGuid(); - - await WithUnitOfWorkAsync(new AbpUnitOfWorkOptions {IsTransactional = true}, async () => - { - _unitOfWorkManager.Current.ShouldNotBeNull(); - - await _personRepository.InsertAsync(new Person(personId, "Adam", 42)); - - await _unitOfWorkManager.Current.RollbackAsync(); - }); - - var person = await _personRepository.FindAsync(personId); - person.ShouldBeNull(); - } - - [Fact] - public async Task Should_Rollback_Transaction_Manually_With_Double_DbContext_Transaction() - { - var personId = Guid.NewGuid(); - var cityId = Guid.NewGuid(); - - using (var scope = ServiceProvider.CreateScope()) - { - var uowManager = scope.ServiceProvider.GetRequiredService(); - - using (uowManager.Begin(new AbpUnitOfWorkOptions {IsTransactional = true})) - { - _unitOfWorkManager.Current.ShouldNotBeNull(); - - await _personRepository.InsertAsync(new Person(personId, "Adam", 42)); - await _cityRepository.InsertAsync(new City(cityId, cityId.ToString())); - - await _unitOfWorkManager.Current.SaveChangesAsync(); - - //Will automatically rollback since not called the Complete! - } - } - - (await _personRepository.FindAsync(personId)).ShouldBeNull(); - (await _cityRepository.FindAsync(cityId)).ShouldBeNull(); - } - } -} 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 3617d8d243..a8d213a81f 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.AuditLogging.MongoDB { @@ -16,24 +13,19 @@ namespace Volo.Abp.AuditLogging.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 d4d00736f1..e217faf961 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.AuditLogging.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 16fb856147..a7ec1ad65f 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.BackgroundJobs.MongoDB { @@ -16,24 +13,19 @@ namespace Volo.Abp.BackgroundJobs.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + - "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + + "Db_" + + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 21d3e6f351..c358bed276 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.BackgroundJobs.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 015f68c89e..12cb8b0de3 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.BlobStoring.Database.MongoDB { @@ -16,22 +13,19 @@ namespace Volo.Abp.BlobStoring.Database.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 e91ed78aa6..a7cfb4f4b6 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.BlobStoring.Database.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 2c59493c08..f66922cfcd 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Blogging.MongoDB { @@ -16,22 +13,19 @@ namespace Volo.Blogging.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 cd53f1a8f5..71824397b4 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 @@ -10,7 +10,7 @@ namespace Volo.Blogging.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 3aa2e3bd72..521b93cc8c 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.CmsKit.MongoDB { @@ -16,22 +13,19 @@ namespace Volo.CmsKit.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 b867199547..3898749c10 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 @@ -10,7 +10,7 @@ namespace Volo.CmsKit.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 3ecebd228b..d00f25b533 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Docs.MongoDB { @@ -16,22 +13,19 @@ namespace Volo.Docs.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 ba3debcdc2..9a40d79492 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 @@ -10,7 +10,7 @@ namespace Volo.Docs.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 ae42da1813..fdafebef51 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.FeatureManagement.MongoDB { @@ -16,24 +13,19 @@ namespace Volo.Abp.FeatureManagement.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 7a0b5ed54f..bb89a83f76 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.FeatureManagement.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 b87971b00e..101f4836a5 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; using Volo.Abp.PermissionManagement.MongoDB; namespace Volo.Abp.Identity.MongoDB @@ -18,22 +15,19 @@ namespace Volo.Abp.Identity.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 6071001c97..09581c13d5 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.Identity.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 73e18457d2..ae32aa2d4a 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 @@ -1,12 +1,9 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Identity.MongoDB; using Volo.Abp.IdentityServer.MongoDB; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.IdentityServer { @@ -20,24 +17,19 @@ namespace Volo.Abp.IdentityServer { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 75ce977418..2c2f120acd 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.IdentityServer static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 04d5d4aeca..d896cf01dc 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.PermissionManagement.MongoDB { @@ -15,22 +12,19 @@ namespace Volo.Abp.PermissionManagement.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; - - Configure(options => { options.ConnectionStrings.Default = connectionString; }); + Guid.NewGuid().ToString("N"); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => - client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 8ede0f98e4..97799fc03b 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.PermissionManagement.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 b19c6f4201..0e456a2df8 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.SettingManagement.MongoDB { @@ -16,24 +13,19 @@ namespace Volo.Abp.SettingManagement.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 e15891891b..4f9142a829 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 @@ -10,7 +10,7 @@ namespace Volo.Abp.SettingManagement.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 2bcf5f89f3..3bdcf0ad9c 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace Volo.Abp.TenantManagement.MongoDB { @@ -16,24 +13,19 @@ namespace Volo.Abp.TenantManagement.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - //TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/100 - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 9eed11fb27..689f273178 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 @@ -12,7 +12,7 @@ namespace Volo.Abp.TenantManagement.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 572788f8bc..d1a863eb2c 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 @@ -10,7 +10,7 @@ namespace MyCompanyName.MyProjectName.MongoDB static MyProjectNameMongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 8c1f5a1b60..25db3dbaeb 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace MyCompanyName.MyProjectName.MongoDB { @@ -16,23 +13,19 @@ namespace MyCompanyName.MyProjectName.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MyProjectNameMongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } } 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 3b41ceb151..e471590369 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 @@ -10,7 +10,7 @@ namespace MyCompanyName.MyProjectName.MongoDB static MongoDbFixture() { - MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10); + MongoDbRunner = MongoDbRunner.Start(); ConnectionString = MongoDbRunner.ConnectionString; } 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 ecafd42fec..25db3dbaeb 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 @@ -1,10 +1,7 @@ using System; -using System.Linq; -using System.Threading; -using MongoDB.Driver; -using MongoDB.Driver.Core.Servers; using Volo.Abp.Data; using Volo.Abp.Modularity; +using Volo.Abp.Uow; namespace MyCompanyName.MyProjectName.MongoDB { @@ -16,23 +13,19 @@ namespace MyCompanyName.MyProjectName.MongoDB { public override void ConfigureServices(ServiceConfigurationContext context) { - var stringArray = MongoDbFixture.ConnectionString.Split('?'); - - var connectionString = stringArray[0].EnsureEndsWith('/') + + var connectionString = MongoDbFixture.ConnectionString.EnsureEndsWith('/') + "Db_" + - Guid.NewGuid().ToString("N") + "/?" + stringArray[1]; + Guid.NewGuid().ToString("N"); Configure(options => { options.ConnectionStrings.Default = connectionString; }); - EnsureTransactionIsReady(new MongoClient(connectionString)); - } - - private void EnsureTransactionIsReady(MongoClient client) - { - SpinWait.SpinUntil(() => client.Cluster.Description.Servers.Any(s => s.State == ServerState.Connected && s.IsDataBearing)); + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); } } }