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));
        }
示例#3
0
        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);
        }
示例#5
0
        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));
        }
示例#6
0
        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());
        }
示例#7
0
        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));
        }