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); }
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); }
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); }
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); }