Exemplo n.º 1
0
        public void WhenCalledForListWithOneNode_ShouldEmptyList()
        {
            var sut = new ChainedList <int>(new List <int> {
                1
            });

            sut.RemoveHead();

            Assert.IsTrue(sut.IsEmpty);
        }
Exemplo n.º 2
0
        public void WhenListNotEmpty_ShouldReturnFalse()
        {
            var sut = new ChainedList <int>(new List <int> {
                1, 2
            });

            Assert.IsFalse(sut.IsEmpty);
            Assert.IsTrue(sut.Any());

            sut.RemoveHead();

            Assert.IsFalse(sut.IsEmpty);
            Assert.IsTrue(sut.Any());
        }
Exemplo n.º 3
0
        public void WhenRemovesOnlyNOde_ShouldReturnTrue()
        {
            var sut = new ChainedList <int>(new List <int> {
                1
            });

            Assert.IsFalse(sut.IsEmpty);
            Assert.IsTrue(sut.Any());

            sut.RemoveHead();

            Assert.IsTrue(sut.IsEmpty);
            Assert.IsFalse(sut.Any());
        }
Exemplo n.º 4
0
        public void WhenCalled_ShouldRemoveHead()
        {
            var sut = new ChainedList <int>(new List <int> {
                1, 2, 4, 10
            });

            sut.RemoveHead();

            var first  = sut.Head;
            var second = first.Next;
            var third  = second.Next;

            Assert.AreEqual(2, first.Value);
            Assert.AreEqual(4, second.Value);
            Assert.AreEqual(10, third.Value);
            Assert.IsNull(third.Next);
        }