コード例 #1
0
        public void AddingSingleItemToCollectionWorksCorrectly()
        {
            // arrange
            var itemDummy = PriorityItemHelper.CreatePriorityMock(1);

            var sut = new PriorityCollection <IPriorityItem>();

            // act
            var result = sut.TryAdd(itemDummy.Object);

            // assert
            result.Should().BeTrue();
            sut.AsEnumerable().First().Should().Be(itemDummy.Object);
        }
コード例 #2
0
        public void AddingSecondItemToCollectionAddsItInTheCorrectPosition()
        {
            // arrange
            var itemDummy           = PriorityItemHelper.CreatePriorityMock(1);
            var higherPriorityDummy = PriorityItemHelper.CreatePriorityMock(0);

            var sut = new PriorityCollection <IPriorityItem>();

            sut.TryAdd(itemDummy.Object);

            // act
            var result = sut.TryAdd(higherPriorityDummy.Object);

            // assert
            result.Should().BeTrue();
            sut.AsEnumerable().First().Should().Be(higherPriorityDummy.Object);
        }
コード例 #3
0
        public void AddingPrioritylessItemWillAddItToTheEndOfTheCollection()
        {
            // arrange
            var itemDummy          = PriorityItemHelper.CreatePriorityMock(1);
            var unprioritizedDummy = PriorityItemHelper.CreatePriorityMock(null);

            unprioritizedDummy.SetupAllProperties();

            var sut = new PriorityCollection <IPriorityItem>();

            sut.TryAdd(itemDummy.Object);

            // act
            var result = sut.TryAdd(unprioritizedDummy.Object);

            // assert
            result.Should().BeTrue();
            sut.AsEnumerable().Last().Should().Be(unprioritizedDummy.Object);
            unprioritizedDummy.Object.Priority.Should().Be(1);
        }
コード例 #4
0
        public void AdjustingItemPriorityMovesTheItemToTheCorrectLocation()
        {
            // arrange
            var itemDummy           = PriorityItemHelper.CreatePriorityMock(1);
            var higherPriorityDummy = PriorityItemHelper.CreatePriorityMock(0);

            var sut = new PriorityCollection <IPriorityItem>();

            sut.TryAdd(itemDummy.Object);
            sut.TryAdd(higherPriorityDummy.Object);

            higherPriorityDummy
            .Setup(t => t.Priority)
            .Returns(2);

            // act
            higherPriorityDummy.Raise(t => t.PriorityChanged += null, new EventArgs());

            // assert
            sut.AsEnumerable().Last().Should().Be(higherPriorityDummy.Object);
        }