public void ReverseSingleListTest() { var list = RList <string> .Cons("Wow", RList <string> .Empty); var reverse = RList <string> .Reverse(list); Assert.AreSame(list, reverse); }
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)); }
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); }
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()); }
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()); }
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); }
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); }
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()); }