public void MustRemoveFromBackWhenOnlyOneItemIsInList()
            {

                LinkedList<int> sut = new LinkedList<int>();

                sut.PushBack(1);
                Assert.Equal(1, sut.Back());
                Assert.Equal(1, sut.Front());
                Assert.Equal(1, sut.Count);

                sut.RemoveBack();
                Assert.Equal(0, sut.Count);
                Assert.Throws<InvalidOperationException>(() => sut.Front());
                Assert.Throws<InvalidOperationException>(() => sut.Back());

            }
            public void MustThrowWhenNoElementsExist()
            {
                var sut = new LinkedList<bool>();

                var exception = Assert.Throws<InvalidOperationException>(() => sut.RemoveBack());
                Assert.Equal("There are no elements to remove", exception.Message);
            }
            public void MustRemoveFromBack()
            {

                LinkedList<int> sut = new LinkedList<int>();

                sut.PushBack(1);
                Assert.Equal(1, sut.Back());
                Assert.Equal(1, sut.Front());
                Assert.Equal(1, sut.Count);

                sut.PushFront(2);
                Assert.Equal(1, sut.Back());
                Assert.Equal(2, sut.Front());
                Assert.Equal(2, sut.Count);

                sut.PushBack(3);
                Assert.Equal(3, sut.Back());
                Assert.Equal(2, sut.Front());
                Assert.Equal(3, sut.Count);

                sut.RemoveBack();
                Assert.Equal(1, sut.Back());
                Assert.Equal(2, sut.Front());
                Assert.Equal(2, sut.Count);

            }