public void UpdatingItemThatDoesNotExistActsLikeAdd() { using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var entity = testRepository.Create(); testRepository.Update(entity); testRepository.Save(); } using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { CollectionAssert.AreEquivalent(new[] { 1, 2, 4, 5 }, testRepository.Entities.Select(x => x.Id).ToArray()); } }
public void UpdateTheSameItemMultipleTimes() { using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var entity = testRepository.Entities.First(x => x.Id == 1); entity.Contents.Name = "newname1"; entity.Contents.Number = -1; testRepository.Update(entity); entity.Contents.Name = "newname2"; entity.Contents.Number = -2; testRepository.Update(entity); testRepository.Save(); CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, testRepository.Entities.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, testRepository.Entities.Select(x => x.Id).ToArray()); var entity = testRepository.Entities.First(x => x.Id == 1); Assert.AreEqual("newname2", entity.Contents.Name); Assert.AreEqual(-2, entity.Contents.Number); } }
public void DataReadFromRepoIsDisconnectedFromSession() { using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.Where(x => new[] { 1, 2 }.Contains(x.Id)).ToArray(); testRepository.Delete(collection1[0]); testRepository.Delete(collection1[1]); var collection2 = testRepository.Entities.Where(x => new[] { 1, 2 }.Contains(x.Id)).ToArray(); CollectionAssert.AreEquivalent(new[] { 1, 2 }, collection1.Select(x => x.Id).ToArray()); CollectionAssert.AreEquivalent(new int[] {}, collection2.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.ToArray(); var entity1 = testRepository.Create(); var entity2 = testRepository.Create(); testRepository.Add(entity1); testRepository.Add(entity2); var collection2 = testRepository.Entities.ToArray(); CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, collection1.Select(x => x.Id).ToArray()); CollectionAssert.AreEquivalent(new[] { 1, 2, 4, 5, 6 }, collection2.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.ToArray(); var entity = collection1[0]; string originalName = entity.Contents.Name; int originalNumber = entity.Contents.Number; entity.Contents.Name = "foo"; entity.Contents.Number = -1; testRepository.Update(entity); var collection2 = testRepository.Entities.ToArray(); Assert.AreNotEqual(originalName, collection2[0].Contents.Name); Assert.AreNotEqual(originalNumber, collection2[0].Contents.Number); } }
public void UpdateNullEntity() { var testRepository = new DurableMemoryRepository <EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object); testRepository.Update(null); }
public void DataReadFromRepoIsDisconnectedFromSession() { using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.Where(x => new[]{1, 2}.Contains(x.Id)).ToArray(); testRepository.Delete(collection1[0]); testRepository.Delete(collection1[1]); var collection2 = testRepository.Entities.Where(x => new[] { 1, 2 }.Contains(x.Id)).ToArray(); CollectionAssert.AreEquivalent(new[] { 1, 2 }, collection1.Select(x => x.Id).ToArray()); CollectionAssert.AreEquivalent(new int[] {}, collection2.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.ToArray(); var entity1 = testRepository.Create(); var entity2 = testRepository.Create(); testRepository.Add(entity1); testRepository.Add(entity2); var collection2 = testRepository.Entities.ToArray(); CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, collection1.Select(x => x.Id).ToArray()); CollectionAssert.AreEquivalent(new[] { 1, 2, 4, 5, 6 }, collection2.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var collection1 = testRepository.Entities.ToArray(); var entity = collection1[0]; string originalName = entity.Contents.Name; int originalNumber = entity.Contents.Number; entity.Contents.Name = "foo"; entity.Contents.Number = -1; testRepository.Update(entity); var collection2 = testRepository.Entities.ToArray(); Assert.AreNotEqual(originalName, collection2[0].Contents.Name); Assert.AreNotEqual(originalNumber, collection2[0].Contents.Number); } }
public void UpdateTheSameItemMultipleTimes() { using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var entity = testRepository.Entities.First(x => x.Id == 1); entity.Contents.Name = "newname1"; entity.Contents.Number = -1; testRepository.Update(entity); entity.Contents.Name = "newname2"; entity.Contents.Number = -2; testRepository.Update(entity); testRepository.Save(); CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, testRepository.Entities.Select(x => x.Id).ToArray()); } using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { CollectionAssert.AreEquivalent(new[] { 1, 2, 4 }, testRepository.Entities.Select(x => x.Id).ToArray()); var entity = testRepository.Entities.First(x => x.Id == 1); Assert.AreEqual("newname2", entity.Contents.Name); Assert.AreEqual(-2, entity.Contents.Number); } }
public void UpdatingItemThatDoesNotExistActsLikeAdd() { using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { var entity = testRepository.Create(); testRepository.Update(entity); testRepository.Save(); } using (var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object)) { CollectionAssert.AreEquivalent(new[] { 1, 2, 4, 5 }, testRepository.Entities.Select(x => x.Id).ToArray()); } }
public void UpdateNullEntity() { var testRepository = new DurableMemoryRepository<EntityTest>(MockDataPath, _mockProvider.MockFileSystem.Object); testRepository.Update(null); }