コード例 #1
0
        public void CanAssertUpdateOfItem()
        {
            var change = new ItemChange <int>(ChangeType.Updated, 100);

            change.Should().BeChange(ChangeType.Updated, 100);
            change.Should().BeUpdateOf(100);
        }
コード例 #2
0
        public void CanAssertAdditionOfItem()
        {
            var change = new ItemChange <int>(ChangeType.Added, 5);

            change.Should().BeChange(ChangeType.Added, 5);
            change.Should().BeAdditionOf(5);
        }
コード例 #3
0
        public void CanAssertRemovalOfItem()
        {
            var change = new ItemChange <int>(ChangeType.Removed, 1);

            change.Should().BeChange(ChangeType.Removed, 1);
            change.Should().BeRemovalOf(1);
        }
コード例 #4
0
        public void CanAssertRemoval()
        {
            var change = new ItemChange <int>(ChangeType.Removed, 2);

            change.Should().BeOfChangeType(ChangeType.Removed);
            change.Should().BeRemoval();
        }
コード例 #5
0
        public void CanAssertUpdate()
        {
            var change = new ItemChange <int>(ChangeType.Updated, 1);

            change.Should().BeOfChangeType(ChangeType.Updated);
            change.Should().BeUpdate();
        }
コード例 #6
0
        public void CanAssertAddition()
        {
            var change = new ItemChange <int>(ChangeType.Added, 4);

            change.Should().BeOfChangeType(ChangeType.Added);
            change.Should().BeAddition();
        }
コード例 #7
0
        public void AssertOfChangeTypeDoesNotAcceptDifferentChange()
        {
            var change = new ItemChange <int>(ChangeType.Removed, 1);

            // Expect addition, but actual is removal
            Action assert = () => change.Should().BeOfChangeType(ChangeType.Added);

            assert.ShouldThrow <Exception>().WithMessage("Expected item change to be*addition*but*was Removed*");

            // Expect update, but actual is removal
            assert = () => change.Should().BeOfChangeType(ChangeType.Updated);
            assert.ShouldThrow <Exception>().WithMessage("Expected item change to be*update*but*was Removed*");
        }
コード例 #8
0
        public void FailedAssertOfChangeAppendsReasonAsExpected()
        {
            var    change = new ItemChange <int>(ChangeType.Updated, 2);
            Action assert = () => change.Should().BeChange(ChangeType.Removed, 1, "because {0} should be removed", 1);

            assert.ShouldThrow <Exception>().WithMessage("*removal*of 1 because 1 should be removed*");
        }
コード例 #9
0
        public void AssertOfChangeDoesNotAcceptDifferentItem()
        {
            var    change = new ItemChange <int>(ChangeType.Added, 1);
            Action assert = () => change.Should().BeChange(ChangeType.Added, 2);

            assert.ShouldThrow <Exception>().WithMessage("Expected item change to be*addition*of 2*but found *addition*of*1*");
        }
コード例 #10
0
        public void FailedAssertOfChangeTypeAppendsReasonAsExpected()
        {
            var change = new ItemChange <int>(ChangeType.Removed, 333);

            Action assert = () => change.Should().BeOfChangeType(ChangeType.Added, "because I say so and also because {0} <> {1}", 1, 2);

            assert.ShouldThrow <Exception>().WithMessage("*to be*addition*because I say so and also because 1 <> 2, but*");
        }
コード例 #11
0
        public void ChangesFromReturnsCorrectChangesForDifferentSingletonSequences()
        {
            // Precondition: ItemChange implements Equals in natural way
            var change1 = new ItemChange<int>(ChangeType.Added, 1);
            var change2 = new ItemChange<int>(ChangeType.Added, 1);
            change1.Should().Be(change2);

            var oldSeq = new int[] { 1 };
            var newSeq = new int[] { 2 };
            IEnumerable<IItemChange<int>> expectedChanges = new[]
            {
                new ItemChange<int>(ChangeType.Removed, 1),
                new ItemChange<int>(ChangeType.Added, 2)
            };

            var changes = newSeq.ChangesFrom(oldSeq);  // --- Perform ---

            changes.Should().BeEquivalentTo(expectedChanges);
        }
コード例 #12
0
        public void ChangesFromReturnsCorrectChangesForDifferentSingletonSequences()
        {
            // Precondition: ItemChange implements Equals in natural way
            var change1 = new ItemChange <int>(ChangeType.Added, 1);
            var change2 = new ItemChange <int>(ChangeType.Added, 1);

            change1.Should().Be(change2);

            var oldSeq = new int[] { 1 };
            var newSeq = new int[] { 2 };
            IEnumerable <IItemChange <int> > expectedChanges = new[]
            {
                new ItemChange <int>(ChangeType.Removed, 1),
                new ItemChange <int>(ChangeType.Added, 2)
            };

            var changes = newSeq.ChangesFrom(oldSeq);  // --- Perform ---

            changes.Should().BeEquivalentTo(expectedChanges);
        }