Use `EphemeralMongo` in template project.

pull/16390/head
maliming 2 years ago
parent 77c43659e4
commit 7c5f1432fe
No known key found for this signature in database
GPG Key ID: A646B9CB645ECEA4

@ -5,13 +5,26 @@ namespace MyCompanyName.MyProjectName.MongoDB;
public class MyProjectNameMongoDbFixture : IDisposable
{
private static readonly MongoDbRunner MongoDbRunner;
public static readonly string ConnectionString;
public readonly static IMongoRunner MongoDbRunner;
static MyProjectNameMongoDbFixture()
{
MongoDbRunner = MongoDbRunner.Start(singleNodeReplSet: true, singleNodeReplSetWaitTimeout: 20);
ConnectionString = MongoDbRunner.ConnectionString;
MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
{
UseSingleNodeReplicaSet = 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()

@ -14,7 +14,7 @@ public class MyProjectNameMongoDbTestModule : AbpModule
{
Configure<AbpDbConnectionOptions>(options =>
{
options.ConnectionStrings.Default = MongoDbFixture.GetRandomConnectionString();
options.ConnectionStrings.Default = MyProjectNameMongoDbFixture.GetRandomConnectionString();
});
}
}

@ -15,7 +15,10 @@
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
<PackageReference Include="Mongo2Go" Version="3.1.3" />
<PackageReference Include="EphemeralMongo.Core" Version="1.0.0" />
<PackageReference Include="EphemeralMongo6.runtime.linux-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('Linux'))" />
<PackageReference Include="EphemeralMongo6.runtime.osx-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('OSX'))" />
<PackageReference Include="EphemeralMongo6.runtime.win-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('Windows'))" />
</ItemGroup>
</Project>

@ -10,7 +10,10 @@
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
<PackageReference Include="Mongo2Go" Version="3.1.3" />
<PackageReference Include="EphemeralMongo.Core" Version="1.0.0" />
<PackageReference Include="EphemeralMongo6.runtime.linux-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('Linux'))" />
<PackageReference Include="EphemeralMongo6.runtime.osx-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('OSX'))" />
<PackageReference Include="EphemeralMongo6.runtime.win-x64" Version="1.0.0" Condition="$([MSBuild]::IsOSPlatform('Windows'))" />
<ProjectReference Include="..\..\src\MyCompanyName.MyProjectName.MongoDB\MyCompanyName.MyProjectName.MongoDB.csproj" />
<ProjectReference Include="..\MyCompanyName.MyProjectName.TestBase\MyCompanyName.MyProjectName.TestBase.csproj" />
</ItemGroup>

Loading…
Cancel
Save