added test suite for BaseMongoRepository<TKey>
This commit is contained in:
@@ -9,16 +9,13 @@
|
||||
<PackageReference Include="Microsoft.Extensions.Identity.Stores" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" />
|
||||
<PackageReference Include="MongoDB.Driver" Version="2.7.0" />
|
||||
<PackageReference Include="MongoDbGenericRepository" Version="1.3.9" />
|
||||
<PackageReference Include="xunit" Version="2.4.0" />
|
||||
<PackageReference Include="xunit.runner.console" Version="2.4.0" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" />
|
||||
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.0-beta4-build3742" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MongoDbGenericRepository\MongoDbGenericRepository.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Reference Include="System.Configuration">
|
||||
<HintPath>..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Configuration.dll</HintPath>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using MongoDbGenericRepository.Models;
|
||||
using MongoDbGenericRepository;
|
||||
using MongoDbGenericRepository.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
@@ -30,7 +31,7 @@ namespace CoreIntegrationTests.Infrastructure
|
||||
_fixture.PartitionKey = PartitionKey;
|
||||
TestClassName = GetClassName();
|
||||
MongoDbConfig.EnsureConfigured();
|
||||
SUT = TestRepository.Instance;
|
||||
SUT = TestTKeyRepository<Guid>.Instance;
|
||||
}
|
||||
|
||||
protected T CreateTestDocument()
|
||||
@@ -63,7 +64,7 @@ namespace CoreIntegrationTests.Infrastructure
|
||||
/// <summary>
|
||||
/// SUT: System Under Test
|
||||
/// </summary>
|
||||
protected static ITestRepository SUT { get; set; }
|
||||
protected static ITestRepository<Guid> SUT { get; set; }
|
||||
|
||||
#region Add
|
||||
|
||||
|
||||
@@ -1,7 +1,43 @@
|
||||
using MongoDbGenericRepository;
|
||||
using MongoDB.Bson;
|
||||
using MongoDbGenericRepository;
|
||||
using System;
|
||||
|
||||
namespace CoreIntegrationTests.Infrastructure
|
||||
{
|
||||
public interface ITestRepository<TKey> : IBaseMongoRepository<TKey> where TKey : IEquatable<TKey>
|
||||
{
|
||||
void DropTestCollection<TDocument>();
|
||||
void DropTestCollection<TDocument>(string partitionKey);
|
||||
}
|
||||
|
||||
public class TestTKeyRepository<TKey> : BaseMongoRepository<TKey>, ITestRepository<TKey> where TKey : IEquatable<TKey>
|
||||
{
|
||||
const string connectionString = "mongodb://localhost:27017/MongoDbTests";
|
||||
private static readonly ITestRepository<TKey> _instance = new TestTKeyRepository<TKey>(connectionString);
|
||||
/// <inheritdoc />
|
||||
private TestTKeyRepository(string connectionString) : base(connectionString)
|
||||
{
|
||||
}
|
||||
|
||||
public static ITestRepository<TKey> Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
|
||||
public void DropTestCollection<TDocument>()
|
||||
{
|
||||
MongoDbContext.DropCollection<TDocument>();
|
||||
}
|
||||
|
||||
public void DropTestCollection<TDocument>(string partitionKey)
|
||||
{
|
||||
MongoDbContext.DropCollection<TDocument>(partitionKey);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// A singleton implementation of the TestRepository
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user