From 9fc74fc28efd74b59ad975ab9862ed73a89180c4 Mon Sep 17 00:00:00 2001 From: alexandre-spieser Date: Sat, 10 Feb 2018 16:46:59 +0000 Subject: [PATCH] cleanup redundant tests. --- IntegrationTests/CreatePartitionedTests.cs | 68 ------ IntegrationTests/CreateTests.cs | 69 ------ IntegrationTests/DeletePartitionedTests.cs | 129 ----------- IntegrationTests/DeleteTests.cs | 129 ----------- .../Infrastructure/MongoDBDocumentTestBase.cs | 16 +- IntegrationTests/IntegrationTests.csproj | 10 - IntegrationTests/ProjectPartitionedTests.cs | 140 ------------ IntegrationTests/ProjectTests.cs | 149 ------------- IntegrationTests/ReadPartitionedTests.cs | 161 -------------- IntegrationTests/ReadTests.cs | 182 ---------------- IntegrationTests/UpdatePartitionedTests.cs | 205 ------------------ IntegrationTests/UpdateTests.cs | 205 ------------------ 12 files changed, 14 insertions(+), 1449 deletions(-) delete mode 100644 IntegrationTests/CreatePartitionedTests.cs delete mode 100644 IntegrationTests/CreateTests.cs delete mode 100644 IntegrationTests/DeletePartitionedTests.cs delete mode 100644 IntegrationTests/DeleteTests.cs delete mode 100644 IntegrationTests/ProjectPartitionedTests.cs delete mode 100644 IntegrationTests/ProjectTests.cs delete mode 100644 IntegrationTests/ReadPartitionedTests.cs delete mode 100644 IntegrationTests/ReadTests.cs delete mode 100644 IntegrationTests/UpdatePartitionedTests.cs delete mode 100644 IntegrationTests/UpdateTests.cs diff --git a/IntegrationTests/CreatePartitionedTests.cs b/IntegrationTests/CreatePartitionedTests.cs deleted file mode 100644 index 051bd81..0000000 --- a/IntegrationTests/CreatePartitionedTests.cs +++ /dev/null @@ -1,68 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class CreateTestsPartitionedDocument : PartitionedDocument - { - public CreateTestsPartitionedDocument() : base("TestPartitionKey") - { - Version = 1; - } - public string SomeContent { get; set; } - } - - public class CreatePartitionedTests : BaseMongoDbRepositoryTests - { - [Test] - public void PartitionedAddOne() - { - // Arrange - var document = new CreateTestsPartitionedDocument(); - // Act - SUT.AddOne(document); - // Assert - long count = SUT.Count(e => e.Id == document.Id, PartitionKey); - Assert.AreEqual(1, count); - } - - [Test] - public async Task PartitionedAddOneAsync() - { - // Arrange - var document = new CreateTestsPartitionedDocument(); - // Act - await SUT.AddOneAsync(document); - // Assert - long count = SUT.Count(e => e.Id == document.Id, PartitionKey); - Assert.AreEqual(1, count); - } - - [Test] - public void PartitionedAddMany() - { - // Arrange - var documents = new List { new CreateTestsPartitionedDocument(), new CreateTestsPartitionedDocument() }; - // Act - SUT.AddMany(documents); - // Assert - long count = SUT.Count(e => e.Id == documents[0].Id || e.Id == documents[1].Id, PartitionKey); - Assert.AreEqual(2, count); - } - - [Test] - public async Task PartitionedAddManyAsync() - { - // Arrange - var documents = new List { new CreateTestsPartitionedDocument(), new CreateTestsPartitionedDocument() }; - // Act - await SUT.AddManyAsync(documents); - // Assert - long count = SUT.Count(e => e.Id == documents[0].Id || e.Id == documents[1].Id, PartitionKey); - Assert.AreEqual(2, count); - } - } -} diff --git a/IntegrationTests/CreateTests.cs b/IntegrationTests/CreateTests.cs deleted file mode 100644 index 007c8bf..0000000 --- a/IntegrationTests/CreateTests.cs +++ /dev/null @@ -1,69 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class CreateTestsDocument : Document - { - public CreateTestsDocument() - { - Version = 2; - } - public string SomeContent { get; set; } - } - - [TestFixture] - public class CreateTests : BaseMongoDbRepositoryTests - { - [Test] - public void AddOne() - { - // Arrange - var document = new CreateTestsDocument(); - // Act - SUT.AddOne(document); - // Assert - long count = SUT.Count(e => e.Id == document.Id); - Assert.AreEqual(1, count); - } - - [Test] - public async Task AddOneAsync() - { - // Arrange - var document = new CreateTestsDocument(); - // Act - await SUT.AddOneAsync(document); - // Assert - long count = SUT.Count(e => e.Id == document.Id); - Assert.AreEqual(1, count); - } - - [Test] - public void AddMany() - { - // Arrange - var documents = new List { new CreateTestsDocument(), new CreateTestsDocument() }; - // Act - SUT.AddMany(documents); - // Assert - long count = SUT.Count(e => e.Id == documents[0].Id || e.Id == documents[1].Id); - Assert.AreEqual(2, count); - } - - [Test] - public async Task AddManyAsync() - { - // Arrange - var documents = new List { new CreateTestsDocument(), new CreateTestsDocument() }; - // Act - await SUT.AddManyAsync(documents); - // Assert - long count = SUT.Count(e => e.Id == documents[0].Id || e.Id == documents[1].Id); - Assert.AreEqual(2, count); - } - } -} diff --git a/IntegrationTests/DeletePartitionedTests.cs b/IntegrationTests/DeletePartitionedTests.cs deleted file mode 100644 index 24ca3d1..0000000 --- a/IntegrationTests/DeletePartitionedTests.cs +++ /dev/null @@ -1,129 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class DeleteTestsPartitionedDocument : PartitionedDocument - { - public DeleteTestsPartitionedDocument() : base("TestPartitionKey") - { - Version = 1; - } - public string SomeContent { get; set; } - } - - public class DeletePartitionedTests : BaseMongoDbRepositoryTests - { - [Test] - public void PartitionedDeleteOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.DeleteOne(document); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id, PartitionKey)); - } - - [Test] - public void PartitionedDeleteOneLinq() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.DeleteOne(e => e.Id == document.Id, PartitionKey); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id, PartitionKey)); - } - - [Test] - public async Task PartitionedDeleteOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.DeleteOneAsync(document); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id, PartitionKey)); - } - - [Test] - public async Task PartitionedDeleteOneAsyncLinq() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.DeleteOneAsync(e => e.Id == document.Id, PartitionKey); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id, PartitionKey)); - } - - [Test] - public async Task PartitionedDeleteManyAsyncLinq() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "DeleteManyAsyncLinqContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.DeleteManyAsync(e => e.SomeContent == "DeleteManyAsyncLinqContent", PartitionKey); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == "DeleteManyAsyncLinqContent", PartitionKey)); - } - - [Test] - public async Task PartitionedDeleteManyAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "DeleteManyAsyncLinqContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.DeleteManyAsync(documents); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == "DeleteManyAsyncLinqContent", PartitionKey)); - } - - [Test] - public void PartitionedDeleteManyLinq() - { - // Arrange - var content = "DeleteManyLinqContent"; - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = content); - SUT.AddMany(documents); - // Act - var result = SUT.DeleteMany(e => e.SomeContent == content, PartitionKey); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == content, PartitionKey)); - } - - [Test] - public void PartitionedDeleteMany() - { - // Arrange - var content = "DeleteManyContent"; - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = content); - SUT.AddMany(documents); - // Act - var result = SUT.DeleteMany(documents); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == content, PartitionKey)); - } - } -} diff --git a/IntegrationTests/DeleteTests.cs b/IntegrationTests/DeleteTests.cs deleted file mode 100644 index ec01f75..0000000 --- a/IntegrationTests/DeleteTests.cs +++ /dev/null @@ -1,129 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class DeleteTestsDocument : Document - { - public DeleteTestsDocument() - { - Version = 2; - } - public string SomeContent { get; set; } - } - - public class DeleteTests : BaseMongoDbRepositoryTests - { - [Test] - public void DeleteOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.DeleteOne(document); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id)); - } - - [Test] - public void DeleteOneLinq() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.DeleteOne(e => e.Id == document.Id); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id)); - } - - [Test] - public async Task DeleteOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.DeleteOneAsync(document); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id)); - } - - [Test] - public async Task DeleteOneAsyncLinq() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.DeleteOneAsync(e => e.Id == document.Id); - // Assert - Assert.AreEqual(1, result); - Assert.IsFalse(SUT.Any(e => e.Id == document.Id)); - } - - [Test] - public async Task DeleteManyAsyncLinq() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "DeleteManyAsyncLinqContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.DeleteManyAsync(e => e.SomeContent == "DeleteManyAsyncLinqContent"); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == "DeleteManyAsyncLinqContent")); - } - - [Test] - public async Task DeleteManyAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "DeleteManyAsyncLinqContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.DeleteManyAsync(documents); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == "DeleteManyAsyncLinqContent")); - } - - [Test] - public void DeleteManyLinq() - { - // Arrange - var content = "DeleteManyLinqContent"; - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = content); - SUT.AddMany(documents); - // Act - var result = SUT.DeleteMany(e => e.SomeContent == content); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == content)); - } - - [Test] - public void DeleteMany() - { - // Arrange - var content = "DeleteManyContent"; - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = content); - SUT.AddMany(documents); - // Act - var result = SUT.DeleteMany(documents); - // Assert - Assert.AreEqual(5, result); - Assert.IsFalse(SUT.Any(e => e.SomeContent == content)); - } - } -} diff --git a/IntegrationTests/Infrastructure/MongoDBDocumentTestBase.cs b/IntegrationTests/Infrastructure/MongoDBDocumentTestBase.cs index 6711c9f..d50463a 100644 --- a/IntegrationTests/Infrastructure/MongoDBDocumentTestBase.cs +++ b/IntegrationTests/Infrastructure/MongoDBDocumentTestBase.cs @@ -1,5 +1,4 @@ -using MongoDB.Bson.Serialization.Attributes; -using MongoDbGenericRepository.Models; +using MongoDbGenericRepository.Models; using NUnit.Framework; using System; using System.Collections.Generic; @@ -11,6 +10,12 @@ using System.Threading.Tasks; namespace IntegrationTests.Infrastructure { + public class MyTestProjection + { + public string SomeContent { get; set; } + public DateTime SomeDate { get; set; } + } + public class TestDoc : Document { public TestDoc() @@ -31,6 +36,10 @@ namespace IntegrationTests.Infrastructure } + public class Nested + { + public DateTime SomeDate { get; set; } + } [TestFixture] public abstract class MongoDbDocumentTestBase @@ -722,6 +731,7 @@ namespace IntegrationTests.Infrastructure #endregion Project #region Test Utils + [MethodImpl(MethodImplOptions.NoInlining)] private string GetCurrentMethod() { @@ -752,4 +762,6 @@ namespace IntegrationTests.Infrastructure #endregion Test Utils } + + } diff --git a/IntegrationTests/IntegrationTests.csproj b/IntegrationTests/IntegrationTests.csproj index 0897336..41ce31e 100644 --- a/IntegrationTests/IntegrationTests.csproj +++ b/IntegrationTests/IntegrationTests.csproj @@ -51,14 +51,11 @@ - - - @@ -66,14 +63,7 @@ - - - - - - - diff --git a/IntegrationTests/ProjectPartitionedTests.cs b/IntegrationTests/ProjectPartitionedTests.cs deleted file mode 100644 index 6efcfe1..0000000 --- a/IntegrationTests/ProjectPartitionedTests.cs +++ /dev/null @@ -1,140 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System; -using System.Linq; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class ProjectTestsPartitionedDocument : PartitionedDocument - { - public ProjectTestsPartitionedDocument() : base("TestPartitionKey") - { - Version = 2; - Nested = new Nested - { - SomeDate = DateTime.UtcNow - }; - } - - public string SomeContent { get; set; } - - public Nested Nested { get; set; } - } - - public class ProjectPartitionedTests : BaseMongoDbRepositoryTests - { - [Test] - public async Task PartitionedProjectOneAsync() - { - // Arrange - const string someContent = "ProjectOneAsyncContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocument(); - document.SomeContent = someContent; - document.Nested.SomeDate = someDate; - SUT.AddOne(document); - // Act - var result = await SUT.ProjectOneAsync( - x => x.Id == document.Id, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }, - PartitionKey); - // Assert - Assert.IsNotNull(result); - Assert.AreEqual(someContent, result.SomeContent); - Assert.AreEqual(someDate.Minute, result.SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.SomeDate.Second); - } - - [Test] - public void PartitionedProjectOne() - { - // Arrange - const string someContent = "ProjectOneContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocument(); - document.SomeContent = someContent; - document.Nested.SomeDate = someDate; - SUT.AddOne(document); - // Act - var result = SUT.ProjectOne( - x => x.Id == document.Id, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }, - PartitionKey); - // Assert - Assert.IsNotNull(result); - Assert.AreEqual(someContent, result.SomeContent); - Assert.AreEqual(someDate.Minute, result.SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.SomeDate.Second); - } - - [Test] - public async Task PartitionedProjectManyAsync() - { - // Arrange - const string someContent = "ProjectManyAsyncContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocuments(5); - document.ForEach(e => - { - e.SomeContent = someContent; - e.Nested.SomeDate = someDate; - }); - - SUT.AddMany(document); - // Act - var result = await SUT.ProjectManyAsync( - x => x.SomeContent == someContent, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }, - PartitionKey); - // Assert - Assert.AreEqual(5, result.Count); - Assert.AreEqual(someContent, result.First().SomeContent); - Assert.AreEqual(someDate.Minute, result.First().SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.First().SomeDate.Second); - } - - [Test] - public void PartitionedProjectMany() - { - // Arrange - const string someContent = "ProjectManyContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocuments(5); - document.ForEach(e => - { - e.SomeContent = someContent; - e.Nested.SomeDate = someDate; - }); - - SUT.AddMany(document); - // Act - var result = SUT.ProjectMany( - x => x.SomeContent == someContent, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }, - PartitionKey); - // Assert - Assert.AreEqual(5, result.Count); - Assert.AreEqual(someContent, result.First().SomeContent); - Assert.AreEqual(someDate.Minute, result.First().SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.First().SomeDate.Second); - } - } -} diff --git a/IntegrationTests/ProjectTests.cs b/IntegrationTests/ProjectTests.cs deleted file mode 100644 index 8749a3e..0000000 --- a/IntegrationTests/ProjectTests.cs +++ /dev/null @@ -1,149 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System; -using System.Linq; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class Nested - { - public DateTime SomeDate { get; set; } - } - - public class MyTestProjection - { - public DateTime SomeDate { get; set; } - public string SomeContent { get; set; } - } - - public class ProjectTestsDocument : Document - { - public ProjectTestsDocument() - { - Version = 2; - Nested = new Nested - { - SomeDate = DateTime.UtcNow - }; - } - - public string SomeContent { get; set; } - - public Nested Nested { get; set; } - } - - public class ProjectTests : BaseMongoDbRepositoryTests - { - - - [Test] - public async Task ProjectOneAsync() - { - // Arrange - const string someContent = "ProjectOneAsyncContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocument(); - document.SomeContent = someContent; - document.Nested.SomeDate = someDate; - SUT.AddOne(document); - // Act - var result = await SUT.ProjectOneAsync( - x => x.Id == document.Id, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }); - // Assert - Assert.IsNotNull(result); - Assert.AreEqual(someContent, result.SomeContent); - Assert.AreEqual(someDate.Minute, result.SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.SomeDate.Second); - } - - [Test] - public void ProjectOne() - { - // Arrange - const string someContent = "ProjectOneContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocument(); - document.SomeContent = someContent; - document.Nested.SomeDate = someDate; - SUT.AddOne(document); - // Act - var result = SUT.ProjectOne( - x => x.Id == document.Id, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }); - // Assert - Assert.IsNotNull(result); - Assert.AreEqual(someContent, result.SomeContent); - Assert.AreEqual(someDate.Minute, result.SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.SomeDate.Second); - } - - [Test] - public async Task ProjectManyAsync() - { - // Arrange - const string someContent = "ProjectManyAsyncContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocuments(5); - document.ForEach(e => - { - e.SomeContent = someContent; - e.Nested.SomeDate = someDate; - }); - - SUT.AddMany(document); - // Act - var result = await SUT.ProjectManyAsync( - x => x.SomeContent == someContent, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }); - // Assert - Assert.AreEqual(5, result.Count); - Assert.AreEqual(someContent, result.First().SomeContent); - Assert.AreEqual(someDate.Minute, result.First().SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.First().SomeDate.Second); - } - - [Test] - public void ProjectMany() - { - // Arrange - const string someContent = "ProjectManyContent"; - var someDate = DateTime.UtcNow; - var document = CreateTestDocuments(5); - document.ForEach(e => - { - e.SomeContent = someContent; - e.Nested.SomeDate = someDate; - }); - - SUT.AddMany(document); - // Act - var result = SUT.ProjectMany( - x => x.SomeContent == someContent, - x => new MyTestProjection - { - SomeContent = x.SomeContent, - SomeDate = x.Nested.SomeDate - }); - // Assert - Assert.AreEqual(5, result.Count); - Assert.AreEqual(someContent, result.First().SomeContent); - Assert.AreEqual(someDate.Minute, result.First().SomeDate.Minute); - Assert.AreEqual(someDate.Second, result.First().SomeDate.Second); - } - } -} diff --git a/IntegrationTests/ReadPartitionedTests.cs b/IntegrationTests/ReadPartitionedTests.cs deleted file mode 100644 index d4205ac..0000000 --- a/IntegrationTests/ReadPartitionedTests.cs +++ /dev/null @@ -1,161 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class ReadTestsPartitionedDocument : PartitionedDocument - { - public ReadTestsPartitionedDocument() : base("TestPartitionKey") - { - Version = 1; - } - public string SomeContent { get; set; } - } - - public class ReadPartitionedTests : BaseMongoDbRepositoryTests - { - - - - - [Test] - public async Task PartitionedGetOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.GetOneAsync(x => x.Id == document.Id, PartitionKey); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public void PartitionedGetOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.GetOne(x => x.Id == document.Id, PartitionKey); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public void PartitionedGetCursor() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var cursor = SUT.GetCursor(x => x.Id == document.Id, PartitionKey); - var count = cursor.Count(); - // Assert - Assert.AreEqual(1, count); - } - - [Test] - public async Task PartitionedAnyAsyncReturnsTrue() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.AnyAsync(x => x.Id == document.Id, PartitionKey); - // Assert - Assert.AreEqual(true, result); - } - - [Test] - public async Task PartitionedAnyAsyncReturnsFalse() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.AnyAsync(x => x.Id == Guid.NewGuid(), PartitionKey); - // Assert - Assert.AreEqual(false, result); - } - - [Test] - public void PartitionedAnyReturnsTrue() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.Any(x => x.Id == document.Id, PartitionKey); - // Assert - Assert.AreEqual(true, result); - } - - [Test] - public void PartitionedAnyReturnsFalse() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.Any(x => x.Id == Guid.NewGuid(), PartitionKey); - // Assert - Assert.AreEqual(false, result); - } - - [Test] - public async Task PartitionedGetAllAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "GetAllAsyncContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.GetAllAsync(x => x.SomeContent == "GetAllAsyncContent", PartitionKey); - // Assert - Assert.AreEqual(5, result.Count); - } - - [Test] - public void PartitionedGetAll() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "GetAllContent"); - SUT.AddMany(documents); - // Act - var result = SUT.GetAll(x => x.SomeContent == "GetAllContent", PartitionKey); - // Assert - Assert.AreEqual(5, result.Count); - } - - [Test] - public async Task PartitionedCountAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "CountAsyncContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.CountAsync(x => x.SomeContent == "CountAsyncContent", PartitionKey); - // Assert - Assert.AreEqual(5, result); - } - - [Test] - public void PartitionedCount() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "CountContent"); - SUT.AddMany(documents); - // Act - var result = SUT.Count(x => x.SomeContent == "CountContent", PartitionKey); - // Assert - Assert.AreEqual(5, result); - } - } -} diff --git a/IntegrationTests/ReadTests.cs b/IntegrationTests/ReadTests.cs deleted file mode 100644 index e6c186a..0000000 --- a/IntegrationTests/ReadTests.cs +++ /dev/null @@ -1,182 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class ReadTestsDocument : Document - { - public ReadTestsDocument() - { - Version = 2; - } - public string SomeContent { get; set; } - } - - [TestFixture] - public class ReadTests : BaseMongoDbRepositoryTests - { - [Test] - public async Task GetByIdAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.GetByIdAsync(document.Id); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public void GetById() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.GetById(document.Id); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public async Task GetOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.GetOneAsync(x => x.Id == document.Id); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public void GetOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.GetOne(x => x.Id == document.Id); - // Assert - Assert.IsNotNull(result); - } - - [Test] - public void GetCursor() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var cursor = SUT.GetCursor(x => x.Id == document.Id); - var count = cursor.Count(); - // Assert - Assert.AreEqual(1, count); - } - - [Test] - public async Task AnyAsyncReturnsTrue() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.AnyAsync(x => x.Id == document.Id); - // Assert - Assert.AreEqual(true, result); - } - - [Test] - public async Task AnyAsyncReturnsFalse() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = await SUT.AnyAsync(x => x.Id == Guid.NewGuid()); - // Assert - Assert.AreEqual(false, result); - } - - [Test] - public void AnyReturnsTrue() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.Any(x => x.Id == document.Id); - // Assert - Assert.AreEqual(true, result); - } - - [Test] - public void AnyReturnsFalse() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - // Act - var result = SUT.Any(x => x.Id == Guid.NewGuid()); - // Assert - Assert.AreEqual(false, result); - } - - [Test] - public async Task GetAllAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "GetAllAsyncContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.GetAllAsync(x => x.SomeContent == "GetAllAsyncContent"); - // Assert - Assert.AreEqual(5, result.Count); - } - - [Test] - public void GetAll() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "GetAllContent"); - SUT.AddMany(documents); - // Act - var result = SUT.GetAll(x => x.SomeContent == "GetAllContent"); - // Assert - Assert.AreEqual(5, result.Count); - } - - [Test] - public async Task CountAsync() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "CountAsyncContent"); - SUT.AddMany(documents); - // Act - var result = await SUT.CountAsync(x => x.SomeContent == "CountAsyncContent"); - // Assert - Assert.AreEqual(5, result); - } - - [Test] - public void Count() - { - // Arrange - var documents = CreateTestDocuments(5); - documents.ForEach(e => e.SomeContent = "CountContent"); - SUT.AddMany(documents); - // Act - var result = SUT.Count(x => x.SomeContent == "CountContent"); - // Assert - Assert.AreEqual(5, result); - } - } -} diff --git a/IntegrationTests/UpdatePartitionedTests.cs b/IntegrationTests/UpdatePartitionedTests.cs deleted file mode 100644 index fd7e3f9..0000000 --- a/IntegrationTests/UpdatePartitionedTests.cs +++ /dev/null @@ -1,205 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDB.Driver; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class UpdateTestsPartitionedDocument : PartitionedDocument - { - public UpdateTestsPartitionedDocument() : base("TestPartitionKey") - { - Version = 2; - Children = new List(); - } - public string SomeContent { get; set; } - public List Children { get; set; } - } - - public class UpdatePartitionedTests : BaseMongoDbRepositoryTests - { - [Test] - public void PartitionedUpdateOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - document.SomeContent = "UpdateOneContent"; - // Act - var result = SUT.UpdateOne(document); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual("UpdateOneContent", updatedDocument.SomeContent); - } - - [Test] - public async Task PartitionedUpdateOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - document.SomeContent = "UpdateOneAsyncContent"; - // Act - var result = await SUT.UpdateOneAsync(document); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual("UpdateOneAsyncContent", updatedDocument.SomeContent); - } - - [Test] - public async Task UpdateOneAsyncWithUpdateDefinition() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - var updateDef = Builders.Update.AddToSetEach(p => p.Children, childrenToAdd); - - // Act - var result = await SUT.UpdateOneAsync(document, updateDef); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithUpdateDefinition() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - var updateDef = Builders.Update.AddToSetEach(p => p.Children, childrenToAdd); - - // Act - var result = SUT.UpdateOne(document, updateDef); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var result = SUT.UpdateOne(document, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public async Task UpdateOneAsyncWithFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var result = await SUT.UpdateOneAsync(document, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithFilterAndFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var filter = Builders.Filter.Eq("Id", document.Id); - var result = SUT.UpdateOne(filter, x => x.Children, childrenToAdd, document.PartitionKey); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public async Task UpdateOneAsyncWithFilterAndFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var filter = Builders.Filter.Eq("Id", document.Id); - var result = await SUT.UpdateOneAsync(filter, x => x.Children, childrenToAdd, document.PartitionKey); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id, document.PartitionKey); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - } -} diff --git a/IntegrationTests/UpdateTests.cs b/IntegrationTests/UpdateTests.cs deleted file mode 100644 index ee5bb17..0000000 --- a/IntegrationTests/UpdateTests.cs +++ /dev/null @@ -1,205 +0,0 @@ -using IntegrationTests.Infrastructure; -using MongoDB.Driver; -using MongoDbGenericRepository.Models; -using NUnit.Framework; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace IntegrationTests -{ - public class UpdateTestsDocument : Document - { - public UpdateTestsDocument() - { - Version = 2; - Children = new List(); - } - public string SomeContent { get; set; } - public List Children { get; set; } - } - - public class UpdateTests : BaseMongoDbRepositoryTests - { - [Test] - public void UpdateOne() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - document.SomeContent = "UpdateOneContent"; - // Act - var result = SUT.UpdateOne(document); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual("UpdateOneContent", updatedDocument.SomeContent); - } - - [Test] - public async Task UpdateOneAsync() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - document.SomeContent = "UpdateOneAsyncContent"; - // Act - var result = await SUT.UpdateOneAsync(document); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual("UpdateOneAsyncContent", updatedDocument.SomeContent); - } - - [Test] - public async Task UpdateOneAsyncWithUpdateDefinition() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - var updateDef = Builders.Update.AddToSetEach(p => p.Children, childrenToAdd); - - // Act - var result = await SUT.UpdateOneAsync(document, updateDef); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithUpdateDefinition() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - var updateDef = Builders.Update.AddToSetEach(p => p.Children, childrenToAdd); - - // Act - var result = SUT.UpdateOne(document, updateDef); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var result = SUT.UpdateOne(document, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public async Task UpdateOneAsyncWithFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var result = await SUT.UpdateOneAsync(document, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public void UpdateOneWithFilterAndFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var filter = Builders.Filter.Eq("Id", document.Id); - var result = SUT.UpdateOne(filter, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - - [Test] - public async Task UpdateOneAsyncWithFilterAndFieldSelector() - { - // Arrange - var document = CreateTestDocument(); - SUT.AddOne(document); - var childrenToAdd = new List - { - new Child("testType1", "testValue1"), - new Child("testType2", "testValue2") - }; - - // Act - var filter = Builders.Filter.Eq("Id", document.Id); - var result = await SUT.UpdateOneAsync(filter, x => x.Children, childrenToAdd); - // Assert - Assert.IsTrue(result); - var updatedDocument = SUT.GetById(document.Id); - Assert.IsNotNull(updatedDocument); - Assert.AreEqual(childrenToAdd[0].Type, updatedDocument.Children[0].Type); - Assert.AreEqual(childrenToAdd[0].Value, updatedDocument.Children[0].Value); - Assert.AreEqual(childrenToAdd[1].Type, updatedDocument.Children[1].Type); - Assert.AreEqual(childrenToAdd[1].Value, updatedDocument.Children[1].Value); - } - } -}