public void ConsHeadTailTest() { const string data = "One Two Three One Three"; var queue = data.Split().Aggregate(BankersDeque <string> .Empty, (queue1, s) => BankersDeque <string> .Cons(s, queue1)); foreach (var expected in data.Split().Reverse()) { var actual = BankersDeque <string> .Head(queue); Assert.AreEqual(expected, actual); queue = BankersDeque <string> .Tail(queue); } Assert.IsTrue(BankersDeque <string> .IsEmpty(queue)); }
public void EmptyHeadTest() { var queue = BankersDeque <string> .Empty; AssertThrows <ArgumentNullException>(() => BankersDeque <string> .Head(queue)); }