public void IsConsistent_ReturnsFalse_WhenDuplicated() { var testLogger = Substitute.For <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger); var duplicatedId = ID.NewID.Guid; var testItem1 = new FakeItem(duplicatedId); var testItem2 = new FakeItem(duplicatedId); testChecker.AddProcessedItem(testItem1); Assert.False(testChecker.IsConsistent(testItem2)); }
public void IsConsistent_ReturnsTrue_WhenDuplicatedIdsAreInDifferentDatabases() { var testLogger = Substitute.For <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger); var duplicatedId = ID.NewID.Guid; // ReSharper disable once RedundantArgumentDefaultValue var testItem1 = CreateTestItem(duplicatedId, "master"); var testItem2 = CreateTestItem(duplicatedId, "core"); testChecker.AddProcessedItem(testItem1); Assert.True(testChecker.IsConsistent(testItem2)); }
public void IsConsistent_ReturnsTrue_WhenNotDuplicated() { var testLogger = new Mock <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger.Object); var testItem1 = new Mock <ISerializedItem>(); testItem1.SetupGet(x => x.Id).Returns(() => ID.NewID); var testItem2 = new Mock <ISerializedItem>(); testItem2.SetupGet(x => x.Id).Returns(() => ID.NewID); testChecker.AddProcessedItem(testItem1.Object); Assert.IsTrue(testChecker.IsConsistent(testItem2.Object)); }
public void IsConsistent_LogsError_WhenDuplicated() { var testLogger = Substitute.For <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger); var duplicatedId = ID.NewID.Guid; var testItem1 = CreateTestItem(duplicatedId); var testItem2 = CreateTestItem(duplicatedId); testChecker.AddProcessedItem(testItem1); testChecker.IsConsistent(testItem2); testLogger.Received().DuplicateFound(Arg.Any <DuplicateIdConsistencyChecker.DuplicateIdEntry>(), testItem2); }
public void IsConsistent_ReturnsFalse_WhenDuplicated() { var testLogger = new Mock <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger.Object); var duplicatedId = ID.NewID.Guid; var testItem1 = new Mock <ISerializableItem>(); testItem1.SetupGet(x => x.Id).Returns(duplicatedId); var testItem2 = new Mock <ISerializableItem>(); testItem2.SetupGet(x => x.Id).Returns(duplicatedId); testChecker.AddProcessedItem(testItem1.Object); Assert.IsFalse(testChecker.IsConsistent(testItem2.Object)); }
public void IsConsistent_LogsError_WhenDuplicated() { var testLogger = new Mock <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger.Object); var duplicatedId = ID.NewID; var testItem1 = new Mock <ISerializedItem>(); testItem1.SetupGet(x => x.Id).Returns(duplicatedId); var testItem2 = new Mock <ISerializedItem>(); testItem2.SetupGet(x => x.Id).Returns(duplicatedId); testChecker.AddProcessedItem(testItem1.Object); testChecker.IsConsistent(testItem2.Object); testLogger.Verify(x => x.DuplicateFound(testItem1.Object, testItem2.Object), Times.Once()); }
public void IsConsistent_ReturnsTrue_WhenDuplicatedIdsAreInDifferentDatabases() { var testLogger = new Mock <IDuplicateIdConsistencyCheckerLogger>(); var testChecker = new DuplicateIdConsistencyChecker(testLogger.Object); var duplicatedId = ID.NewID; var testItem1 = new Mock <ISerializedItem>(); testItem1.SetupGet(x => x.Id).Returns(duplicatedId); testItem1.SetupGet(x => x.DatabaseName).Returns("master"); var testItem2 = new Mock <ISerializedItem>(); testItem2.SetupGet(x => x.Id).Returns(duplicatedId); testItem2.SetupGet(x => x.DatabaseName).Returns("core"); testChecker.AddProcessedItem(testItem1.Object); Assert.IsTrue(testChecker.IsConsistent(testItem2.Object)); }