Exemplo n.º 1
0
        public void TestDeleteHead()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.DeleteCurrent();
            Assert.AreEqual(1, dlList[0]);
        }
Exemplo n.º 2
0
        public void DeleteWithontElement()
        {
            var dlList = new DoublyLinkingList <int>(1);

            dlList.DeleteCurrent();
            Assert.AreEqual(0, dlList.Length);
        }
Exemplo n.º 3
0
        public void TestGoForwardForOneStep()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlLits.ChangeCurrent();
            Assert.AreEqual(1, dlLits.Current);
        }
Exemplo n.º 4
0
        public void TestGoToHead()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlLits.GoToHead();
            Assert.AreEqual(0, dlLits.Current);
        }
Exemplo n.º 5
0
        public void TestGoForwardOutOfRange()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlLits.GoToEnd();
            dlLits.ChangeCurrent(2);
        }
Exemplo n.º 6
0
        public void TestGetIndexOfCurrent()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            Assert.AreEqual(0, dlList.GetIndexOfCurrent());
            dlList.ChangeCurrent(2);
            Assert.AreEqual(2, dlList.GetIndexOfCurrent());
        }
Exemplo n.º 7
0
        public void TestDeleteSelected()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.ChangeCurrent(2);
            dlList.DeleteCurrent();
            Assert.AreEqual(3, dlList[2]);
        }
Exemplo n.º 8
0
        public void TestDeleteEnd()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.GoToEnd();
            dlList.DeleteCurrent();
            Assert.AreEqual(3, dlList[dlList.Length - 1]);
        }
Exemplo n.º 9
0
        public void TestAddBeforeSelected()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.ChangeCurrent(2);
            dlList.AddBeforeSelected(6);
            Assert.AreEqual(6, dlList[2]);
        }
Exemplo n.º 10
0
        public void TestAddToEnd()
        {
            var dlLits = new DoublyLinkingList <int>(0);

            dlLits.AddToEnd(1);
            Assert.AreEqual(0, dlLits[0]);
            Assert.AreEqual(1, dlLits[1]);
        }
Exemplo n.º 11
0
        static void Main(string[] args)
        {
            var dlList  = new DoublyLinkingList <int>(1, 2, 3, 4);
            var dlList2 = new DoublyLinkingList <char>('c', 'd', 'f');

            dlList.WriteList(false);
            dlList2.WriteList(true);
        }
Exemplo n.º 12
0
        public void TestGoBackForOneStep()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlLits.GoToEnd();
            dlLits.ChangeCurrent(-1);
            Assert.AreEqual(3, dlLits.Current);
        }
Exemplo n.º 13
0
        public void TestIndexer()
        {
            var dlList = new DoublyLinkingList <int>(1, 2, 3, 4, 5);

            for (var i = 0; i < dlList.Length; ++i)
            {
                Assert.AreEqual(i + 1, dlList[i]);
            }
        }
Exemplo n.º 14
0
        public void TestParams()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4, 5);

            for (int i = 0; i < dlList.Length; ++i)
            {
                Assert.AreEqual(i, dlList[i]);
            }
        }
Exemplo n.º 15
0
        public void TestForEachAll()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);
            int i      = 0;

            foreach (var value in dlList.AsEnumerable(false))
            {
                Assert.AreEqual(dlList[i++], value);
            }
        }
Exemplo n.º 16
0
        public void TestAddToNullList()
        {
            var dlList = new DoublyLinkingList <int>();

            dlList.AddToHead(4);
            dlList.AddToEnd(5);
            Assert.AreEqual(4, dlList.Current);
            Assert.AreEqual(4, dlList[0]);
            Assert.AreEqual(5, dlList[dlList.Length - 1]);
        }
Exemplo n.º 17
0
        public void TestForEachAllReverse()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);
            int i      = dlList.Length;

            foreach (var value in dlList.AsEnumerable(true))
            {
                Assert.AreEqual(dlList[--i], value);
            }
        }
Exemplo n.º 18
0
        public void TestAddBeforeSelectedHead()
        {
            var dlList = new DoublyLinkingList <int>(1);

            try
            {
                dlList.AddBeforeSelected(4);
            }
            catch (NullReferenceException)
            {
                Assert.AreEqual(1, 2);
            }
            Assert.AreEqual(4, dlList[0]);
            Assert.AreEqual(1, dlList[1]);
        }
Exemplo n.º 19
0
        public static void WriteList <T>(this DoublyLinkingList <T> dlList, bool reverse)
        {
            if (dlList.Length == 0)
            {
                return;
            }
            DoublyLinking <T> buffer = reverse ? dlList.end : dlList.head;

            DoublyLinking <T> GetNextLinq() => buffer.NextLinq;
            DoublyLinking <T> GetPreviousLinq() => buffer.PreviousLinq;

            Func <DoublyLinking <T> > getLinq = reverse ? (Func <DoublyLinking <T> >)GetPreviousLinq : GetNextLinq;

            while (buffer != null)
            {
                Console.WriteLine(buffer.Value);
                buffer = getLinq();
            }
        }
Exemplo n.º 20
0
        public void TestGetLength()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            Assert.AreEqual(5, dlLits.Length);
        }
Exemplo n.º 21
0
        public void TestNullDelite()
        {
            var dlList = new DoublyLinkingList <int>();

            dlList.DeleteCurrent();
        }
Exemplo n.º 22
0
        public void TestGoBackOutOfRange()
        {
            var dlLits = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlLits.ChangeCurrent(-2);
        }
Exemplo n.º 23
0
        public void TestZeroParams()
        {
            var dlList = new DoublyLinkingList <int>();

            Assert.AreEqual(0, dlList.Length);
        }
Exemplo n.º 24
0
        public void TestCreateNewList()
        {
            var dlLits = new DoublyLinkingList <int>(4);

            Assert.AreEqual(4, dlLits[0]);
        }
Exemplo n.º 25
0
 public void TestIndexOutOfRange()
 {
     var dlList = new DoublyLinkingList <int>();
     var dl     = dlList[100];
 }
Exemplo n.º 26
0
        public void TestChangeCurrentToOutOfLength()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.ChangeCurrent(5);
        }
Exemplo n.º 27
0
        public void TestChangeCurrentToNegative()
        {
            var dlList = new DoublyLinkingList <int>(0, 1, 2, 3, 4);

            dlList.ChangeCurrent(-1);
        }
Exemplo n.º 28
0
 public void TestNullContructor()
 {
     var dlList = new DoublyLinkingList <int>(null);
 }