Ejemplo n.º 1
0
        public void ReverseSingleListTest()
        {
            var list = RList <string> .Cons("Wow", RList <string> .Empty);

            var reverse = RList <string> .Reverse(list);

            Assert.AreSame(list, reverse);
        }
Ejemplo n.º 2
0
        public void IsEmptyTest()
        {
            var list = RList <string> .Empty;

            Assert.IsTrue(RList <string> .IsEmpty(list));
            list = RList <string> .Cons("A", list);

            Assert.IsFalse(RList <string> .IsEmpty(list));
        }
Ejemplo n.º 3
0
        public void CatLeftEmptyTest()
        {
            const string data = "How now, brown cow?";
            var          list = data.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            var list2 = RList <string> .Cat(RList <string> .Empty, list);

            Assert.AreSame(list, list2);
        }
Ejemplo n.º 4
0
        public void ReverseListTest()
        {
            const string data    = "How now, brown cow?";
            var          list    = data.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));
            var          reverse = RList <string> .Reverse(list);

            Assert.AreEqual("[How, now,, brown, cow?]", reverse.ToReadableString());
        }
Ejemplo n.º 5
0
        public void EnumeratorTest()
        {
            const string data = "a b c";
            var          list = data.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            Assert.AreEqual("[c, b, a]", list.ToReadableString());
        }
Ejemplo n.º 6
0
        public void UpdateNegativeTest()
        {
            const string data = "How now, brown cow?";
            var          list = data.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            var exception = AssertThrows <ArgumentException>(() => RList <string> .Fupdate(null, -1, list));

            Assert.AreEqual("Negative\r\nParameter name: i", exception.Message);
        }
Ejemplo n.º 7
0
        public void LookupOneTest()
        {
            const string data = "How now, brown cow?";
            var          list = data.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            var item = RList <string> .Lookup(1, list);

            Assert.AreEqual("brown", item);
        }
Ejemplo n.º 8
0
        public void CatTest()
        {
            const string data1 = "How now,";
            var          list1 = data1.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            const string data2 = "brown cow?";
            var          list2 = data2.Split().Aggregate(RList <string> .Empty, (current, word) => RList <string> .Cons(word, current));

            var list3 = RList <string> .Cat(list1, list2);

            Assert.AreEqual("[now,, How, cow?, brown]", list3.ToReadableString());
        }