Browse Source

Update mongodb unit tests

pull/5174/head
liangshiwei 5 years ago
parent
commit
178bde4cee
  1. 87
      framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoClientExtension.cs
  2. 12
      framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs
  3. 6
      framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs
  4. 12
      modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs
  5. 6
      modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs
  6. 12
      modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs
  7. 6
      modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs
  8. 20
      modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs
  9. 6
      modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs
  10. 20
      modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs
  11. 6
      modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs
  12. 22
      modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs
  13. 6
      modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs
  14. 18
      modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs
  15. 6
      modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs
  16. 14
      modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs
  17. 6
      modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs
  18. 20
      modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs
  19. 6
      modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs
  20. 12
      modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs
  21. 6
      modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs
  22. 18
      modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs
  23. 6
      modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs
  24. 12
      modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs
  25. 6
      modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs
  26. 12
      modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs
  27. 4
      modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs
  28. 5
      templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs
  29. 11
      templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs
  30. 6
      templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs
  31. 11
      templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs

87
framework/src/Volo.Abp.MongoDB/Volo/Abp/MongoDB/MongoClientExtension.cs

@ -1,87 +0,0 @@
using System;
using System.Threading;
using MongoDB.Driver;
namespace Volo.Abp.MongoDB
{
/// <summary>
/// TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
/// </summary>
public static class MongoClientExtension
{
private static readonly TimeSpan InitialDelay = TimeSpan.FromMilliseconds(500);
private static readonly TimeSpan MaxDelay = TimeSpan.FromSeconds(5000);
public static void EnsureReplicationSetReady(this IMongoClient mongoClient)
{
var delay = InitialDelay;
var database = mongoClient.GetDatabase("__dummy-db");
try
{
while (true)
{
try
{
_ = database.GetCollection<DummyEntry>("__dummy");
database.DropCollection("__dummy");
var session = mongoClient.StartSession();
try
{
session.StartTransaction();
session.AbortTransaction();
}
finally
{
session.Dispose();
}
break;
}
catch (NotSupportedException)
{
}
Thread.Sleep(delay);
delay = Min(Double(delay), MaxDelay);
}
}
finally
{
mongoClient.DropDatabase("__dummy-db");
}
}
private static TimeSpan Min(TimeSpan left, TimeSpan right)
{
return new TimeSpan(Math.Min(left.Ticks, right.Ticks));
}
private static TimeSpan Double(TimeSpan timeSpan)
{
long ticks;
try
{
ticks = checked(timeSpan.Ticks * 2);
}
catch (OverflowException)
{
if (timeSpan.Ticks >= 0)
{
return TimeSpan.MaxValue;
}
return TimeSpan.MinValue;
}
return new TimeSpan(ticks);
}
private sealed class DummyEntry
{
public int Id { get; set; }
}
}
}

12
framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/AbpMongoDbTestModule.cs

@ -1,5 +1,9 @@
using System;
using System.Linq;
using System.Threading;
using Microsoft.Extensions.DependencyInjection;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
using Volo.Abp.TestApp;
@ -32,6 +36,14 @@ namespace Volo.Abp.MongoDB
options.AddDefaultRepositories<ITestAppMongoDbContext>();
options.AddRepository<City, CityRepository>();
});
//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));
}
}
}

6
framework/test/Volo.Abp.MongoDB.Tests/Volo/Abp/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

12
modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/AbpAuditLoggingMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,14 @@ namespace Volo.Abp.AuditLogging.MongoDB
{
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));
}
}
}

6
modules/audit-logging/test/Volo.Abp.AuditLogging.MongoDB.Tests/Volo/Abp/AuditLogging/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.AuditLogging.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.AuditLogging.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

12
modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/AbpBackgroundJobsMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,14 @@ namespace Volo.Abp.BackgroundJobs.MongoDB
{
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));
}
}
}

6
modules/background-jobs/test/Volo.Abp.BackgroundJobs.MongoDB.Tests/Volo/Abp/BackgroundJobs/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.BackgroundJobs.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.BackgroundJobs.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

20
modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/BlobStoringDatabaseMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -7,7 +11,7 @@ namespace Volo.Abp.BlobStoring.Database.MongoDB
[DependsOn(
typeof(BlobStoringDatabaseTestBaseModule),
typeof(BlobStoringDatabaseMongoDbModule)
)]
)]
public class BlobStoringDatabaseMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
@ -18,10 +22,16 @@ namespace Volo.Abp.BlobStoring.Database.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}

6
modules/blob-storing-database/test/Volo.Abp.BlobStoring.Database.MongoDB.Tests/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.BlobStoring.Database.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.BlobStoring.Database.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

20
modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/BloggingMongoDBTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -18,10 +22,16 @@ namespace Volo.Blogging.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}
}

6
modules/blogging/test/Volo.Blogging.MongoDB.Tests/Volo/Blogging/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Blogging.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Blogging.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

22
modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/CmsKitMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -7,7 +11,7 @@ namespace Volo.CmsKit.MongoDB
[DependsOn(
typeof(CmsKitTestBaseModule),
typeof(CmsKitMongoDbModule)
)]
)]
public class CmsKitMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
@ -18,10 +22,16 @@ namespace Volo.CmsKit.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}
}

6
modules/cms-kit/test/Volo.CmsKit.MongoDB.Tests/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.CmsKit.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.CmsKit.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

18
modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/DocsMongoDBTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -18,10 +22,16 @@ namespace Volo.Docs.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}

6
modules/docs/test/Volo.Docs.MongoDB.Tests/Volo/Docs/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Docs.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Docs.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

14
modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/AbpFeatureManagementMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,14 @@ namespace Volo.Abp.FeatureManagement.MongoDB
{
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));
}
}
}
}

6
modules/feature-management/test/Volo.Abp.FeatureManagement.MongoDB.Tests/Volo/Abp/FeatureManagement/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.FeatureManagement.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.FeatureManagement.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

20
modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/AbpIdentityMongoDbTestModule.cs

@ -1,8 +1,11 @@
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.PermissionManagement.MongoDB;
using Volo.Abp.Uow;
namespace Volo.Abp.Identity.MongoDB
{
@ -10,7 +13,7 @@ namespace Volo.Abp.Identity.MongoDB
typeof(AbpIdentityTestBaseModule),
typeof(AbpPermissionManagementMongoDbModule),
typeof(AbpIdentityMongoDbModule)
)]
)]
public class AbpIdentityMongoDbTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
@ -21,11 +24,16 @@ namespace Volo.Abp.Identity.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}

6
modules/identity/test/Volo.Abp.Identity.MongoDB.Tests/Volo/Abp/Identity/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.Identity.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.Identity.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

12
modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/AbpIdentityServerMongoDbTestModule.cs

@ -1,4 +1,8 @@
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;
@ -26,6 +30,14 @@ namespace Volo.Abp.IdentityServer
{
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));
}
}
}

6
modules/identityserver/test/Volo.Abp.IdentityServer.MongoDB.Tests/Volo/Abp/IdentityServer/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.IdentityServer
{
@ -14,10 +12,6 @@ namespace Volo.Abp.IdentityServer
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

18
modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/AbpPermissionManagementMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -17,10 +21,16 @@ namespace Volo.Abp.PermissionManagement.MongoDB
"Db_" +
Guid.NewGuid().ToString("N") + "/?" + stringArray[1];
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = connectionString;
});
Configure<AbpDbConnectionOptions>(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));
}
}
}

6
modules/permission-management/test/Volo.Abp.PermissionManagement.MongoDB.Tests/Volo/Abp/PermissionManagement/MongoDb/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.PermissionManagement.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.PermissionManagement.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

12
modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/AbpSettingManagementMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,14 @@ namespace Volo.Abp.SettingManagement.MongoDB
{
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));
}
}
}

6
modules/setting-management/test/Volo.Abp.SettingManagement.MongoDB.Tests/Volo/Abp/SettingManagement/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace Volo.Abp.SettingManagement.MongoDB
{
@ -14,10 +12,6 @@ namespace Volo.Abp.SettingManagement.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

12
modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,14 @@ namespace Volo.Abp.TenantManagement.MongoDB
{
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));
}
}
}

4
modules/tenant-management/test/Volo.Abp.TenantManagement.MongoDB.Tests/Volo/Abp/TenantManagement/MongoDb/MongoDbFixture.cs

@ -14,10 +14,6 @@ namespace Volo.Abp.TenantManagement.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

5
templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace MyCompanyName.MyProjectName.MongoDB
{
@ -14,9 +12,6 @@ namespace MyCompanyName.MyProjectName.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

11
templates/app/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDb/MyProjectNameMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,13 @@ namespace MyCompanyName.MyProjectName.MongoDB
{
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));
}
}
}

6
templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MongoDbFixture.cs

@ -1,7 +1,5 @@
using System;
using Mongo2Go;
using MongoDB.Driver;
using Volo.Abp.MongoDB;
namespace MyCompanyName.MyProjectName.MongoDB
{
@ -14,10 +12,6 @@ namespace MyCompanyName.MyProjectName.MongoDB
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 10);
ConnectionString = MongoDbRunner.ConnectionString;
//TODO It can be removed, when Mongo2Go solves this issue : https://github.com/Mongo2Go/Mongo2Go/issues/89
var client = new MongoClient(MongoDbRunner.ConnectionString);
client.EnsureReplicationSetReady();
}
public void Dispose()

11
templates/module/aspnet-core/test/MyCompanyName.MyProjectName.MongoDB.Tests/MongoDB/MyProjectNameMongoDbTestModule.cs

@ -1,4 +1,8 @@
using System;
using System.Linq;
using System.Threading;
using MongoDB.Driver;
using MongoDB.Driver.Core.Servers;
using Volo.Abp.Data;
using Volo.Abp.Modularity;
@ -22,6 +26,13 @@ namespace MyCompanyName.MyProjectName.MongoDB
{
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));
}
}
}

Loading…
Cancel
Save