Cleanup after tests

This commit is contained in:
alexandre-spieser
2017-08-27 15:50:39 +00:00
parent 5c4d0f5c63
commit 5817486f10
6 changed files with 49 additions and 66 deletions
@@ -1,41 +1,35 @@
using MongoDbGenericRepository;
using IntegrationTests.Infrastructure;
using MongoDbGenericRepository.Models;
using NUnit.Framework;
using System.Collections.Generic;
using System.Configuration;
using System.Threading.Tasks;
namespace IntegrationTests
{
public class TestsRepository : BaseMongoRepository, ITestsRepository
{
/// <inheritdoc />
public TestsRepository(string connectionString, string databaseName) : base(connectionString, databaseName)
{
}
public void DropTestCollection<TDocument>()
{
_mongoDbContext.DropCollection<TDocument>();
}
}
public class InsertTests
public class CreateTests
{
/// <summary>
/// SUT: System Under Test
/// </summary>
private static ITestsRepository SUT { get; set; }
private static ITestRepository SUT { get; set; }
[OneTimeSetUp]
public void Init()
{
var connectionString = ConfigurationManager.ConnectionStrings["MongoDbTests"].ConnectionString;
SUT = new TestsRepository(connectionString, "MongoDbTests");
SUT = new TestRepository(connectionString, "MongoDbTests");
}
[OneTimeTearDown]
public void Cleanup()
{
// We drop the collection at the end of each test session.
SUT.DropTestCollection<InsertTestsDocument>();
}
[Test]
public void InsertOne()
public void AddOne()
{
// Arrange
var document = new InsertTestsDocument();
@@ -47,19 +41,19 @@ namespace IntegrationTests
}
[Test]
public void InsertOneAsync()
public async Task AddOneAsync()
{
// Arrange
var document = new InsertTestsDocument();
// Act
SUT.AddOne(document);
await SUT.AddOneAsync(document);
// Assert
long count = SUT.Count<InsertTestsDocument>(e => e.Id == document.Id);
Assert.AreEqual(1, count);
}
[Test]
public void InsertMany()
public void AddMany()
{
// Arrange
var documents = new List<InsertTestsDocument> { new InsertTestsDocument(), new InsertTestsDocument() };
@@ -70,6 +64,18 @@ namespace IntegrationTests
Assert.AreEqual(2, count);
}
[Test]
public async Task AddManyAsync()
{
// Arrange
var documents = new List<InsertTestsDocument> { new InsertTestsDocument(), new InsertTestsDocument() };
// Act
await SUT.AddManyAsync(documents);
// Assert
long count = SUT.Count<InsertTestsDocument>(e => e.Id == documents[0].Id || e.Id == documents[1].Id);
Assert.AreEqual(2, count);
}
#region Utils
@@ -2,7 +2,7 @@
namespace IntegrationTests
{
public interface ITestsRepository : IBaseMongoRepository
public interface ITestRepository : IBaseMongoRepository
{
void DropTestCollection<TDocument>();
}
@@ -0,0 +1,17 @@
using MongoDbGenericRepository;
namespace IntegrationTests.Infrastructure
{
public class TestRepository : BaseMongoRepository, ITestRepository
{
/// <inheritdoc />
public TestRepository(string connectionString, string databaseName) : base(connectionString, databaseName)
{
}
public void DropTestCollection<TDocument>()
{
_mongoDbContext.DropCollection<TDocument>();
}
}
}
+3 -2
View File
@@ -56,8 +56,9 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ITestsRepository.cs" />
<Compile Include="InsertTests.cs" />
<Compile Include="Infrastructure\ITestRepository.cs" />
<Compile Include="Infrastructure\TestRepository.cs" />
<Compile Include="CreateTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="UpdateTests.cs" />
</ItemGroup>
@@ -1,41 +0,0 @@
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\csc.exe
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.Build.Tasks.CodeAnalysis.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.CodeAnalysis.CSharp.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.CodeAnalysis.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.CodeAnalysis.VisualBasic.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.CSharp.Core.targets
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\Microsoft.VisualBasic.Core.targets
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\System.Collections.Immutable.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\System.Reflection.Metadata.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\vbc.exe
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\VBCSCompiler.exe
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\roslyn\VBCSCompiler.exe.config
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDbGenericRepository.dll.config
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDbGenericRepository.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDbGenericRepository.pdb
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDB.Bson.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDB.Driver.Core.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDB.Driver.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.xml
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDB.Bson.xml
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\MongoDB.Driver.xml
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\obj\Debug\MongoDbGenericRepository.dll
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\obj\Debug\MongoDbGenericRepository.pdb
c:\users\alex\documents\visual studio 2015\Projects\MongoDbGenericRepository\MongoDbGenericRepository\bin\ApplicationInsights.config
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\ApplicationInsights.config
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDbGenericRepository.dll.config
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDbGenericRepository.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDbGenericRepository.pdb
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Bson.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Driver.Core.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Driver.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.xml
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Bson.xml
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Driver.xml
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\obj\Debug\MongoDbGenericRepository.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\obj\Debug\MongoDbGenericRepository.pdb
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\obj\Debug\MongoDbGenericRepository.csprojResolveAssemblyReference.cache
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\System.Runtime.InteropServices.RuntimeInformation.dll
C:\dev\MongoDbRepoUpdate\MongoDbGenericRepository\bin\MongoDB.Driver.Core.xml