From 59328ab1cc52510e5ed3afcf250f8d1127e2f159 Mon Sep 17 00:00:00 2001 From: Michael Pendon Date: Sat, 22 Aug 2020 14:30:34 +0200 Subject: [PATCH] Initial integration tests for immutable classes. #465 --- .../RepoDb.IntegrationTests/ImmutableTest.cs | 33 ++++++++----------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/RepoDb.Core/RepoDb.Tests/RepoDb.IntegrationTests/ImmutableTest.cs b/RepoDb.Core/RepoDb.Tests/RepoDb.IntegrationTests/ImmutableTest.cs index d9e4dbc82..59689a634 100644 --- a/RepoDb.Core/RepoDb.Tests/RepoDb.IntegrationTests/ImmutableTest.cs +++ b/RepoDb.Core/RepoDb.Tests/RepoDb.IntegrationTests/ImmutableTest.cs @@ -164,8 +164,6 @@ public void TestSqlConnectionMergeForImmutableWithNonEmptyTable() // Act var insertResult = connection.Merge(entity); - // The ID could not be set back to the entities, so it should be 0 - // Setup var newEntity = new ImmutableIdentityTable(insertResult, entity.RowGuid, @@ -180,9 +178,11 @@ public void TestSqlConnectionMergeForImmutableWithNonEmptyTable() // Act var mergeResult = connection.Merge(newEntity); + // The ID could not be set back to the entities, so it should be 0 + // Assert Assert.IsTrue(mergeResult > 0); - Assert.AreEqual(entity.Id, mergeResult); + Assert.AreEqual(insertResult, mergeResult); // Act var queryResult = connection.Query(newEntity.Id).FirstOrDefault(); @@ -229,12 +229,12 @@ public void TestSqlConnectionMergeAllForImmutable() public void TestSqlConnectionMergeAllForImmutableWithNonEmptyTables() { // Setup - var entities = Helper.CreateImmutableIdentityTables(10); + var entities = Helper.CreateIdentityTables(10); using (var connection = new SqlConnection(Database.ConnectionStringForRepoDb)) { // Act - var insertAllResult = connection.InsertAll(entities); + var insertAllResult = connection.InsertAll(entities); // Setup var newEntities = entities.Select(entity => new ImmutableIdentityTable(entity.Id, @@ -253,18 +253,13 @@ public void TestSqlConnectionMergeAllForImmutableWithNonEmptyTables() // Assert Assert.AreEqual(entities.Count, mergeAllResult); - // The ID could not be set back to the entities, so it should be 0 - - // Assert - Assert.IsTrue(entities.All(e => e.Id == 0)); - // Act - var queryResult = connection.QueryAll().AsList(); + var queryResult = connection.QueryAll().AsList(); // Assert Assert.AreEqual(entities.Count, queryResult.Count()); newEntities.ForEach(entity => - Helper.AssertPropertiesEquality(entity, queryResult[entities.IndexOf(entity)])); + Helper.AssertPropertiesEquality(entity, queryResult[newEntities.IndexOf(entity)])); } } @@ -299,12 +294,12 @@ public void TestSqlConnectionQueryForImmutable() public void TestSqlConnectionUpdateForImmutableViaDataEntity() { // Setup - var entity = Helper.CreateImmutableIdentityTable(); + var entity = Helper.CreateIdentityTable(); using (var connection = new SqlConnection(Database.ConnectionStringForRepoDb)) { // Act - connection.Insert(entity); + connection.Insert(entity); // Setup var newEntity = new ImmutableIdentityTable(entity.Id, @@ -336,12 +331,12 @@ public void TestSqlConnectionUpdateForImmutableViaDataEntity() public void TestSqlConnectionUpdateForImmutableViaPrimaryKey() { // Setup - var entity = Helper.CreateImmutableIdentityTable(); + var entity = Helper.CreateIdentityTable(); using (var connection = new SqlConnection(Database.ConnectionStringForRepoDb)) { // Act - connection.Insert(entity); + connection.Insert(entity); // Setup var newEntity = new ImmutableIdentityTable(entity.Id, @@ -377,12 +372,12 @@ public void TestSqlConnectionUpdateForImmutableViaPrimaryKey() public void TestSqlConnectionUpdateAllForImmutable() { // Setup - var entities = Helper.CreateImmutableIdentityTables(10); + var entities = Helper.CreateIdentityTables(10); using (var connection = new SqlConnection(Database.ConnectionStringForRepoDb)) { // Act - connection.InsertAll(entities); + connection.InsertAll(entities); // Setup var newEntities = entities.Select(entity => new ImmutableIdentityTable(entity.Id, @@ -407,7 +402,7 @@ public void TestSqlConnectionUpdateAllForImmutable() // Assert Assert.AreEqual(entities.Count, queryResult.Count()); newEntities.ForEach(entity => - Helper.AssertPropertiesEquality(entity, queryResult[entities.IndexOf(entity)])); + Helper.AssertPropertiesEquality(entity, queryResult[newEntities.IndexOf(entity)])); } }