public void EmptyTest() { var queue = PhysicistsQueue <string> .Empty; Assert.IsTrue(PhysicistsQueue <string> .IsEmpty(queue)); queue = PhysicistsQueue <string> .Snoc(queue, "Item"); Assert.IsFalse(PhysicistsQueue <string> .IsEmpty(queue)); queue = PhysicistsQueue <string> .Tail(queue); Assert.IsTrue(PhysicistsQueue <string> .IsEmpty(queue)); }
public void SnocTest() { var queue = PhysicistsQueue <string> .Empty; queue = PhysicistsQueue <string> .Snoc(queue, "One"); Assert.AreEqual("[[One], 1, [One], 0, null]", DumpQueue(queue, false)); queue = PhysicistsQueue <string> .Snoc(queue, "Two"); Assert.AreEqual("[[One], 1, [One], 1, [Two]]", DumpQueue(queue, false)); queue = PhysicistsQueue <string> .Snoc(queue, "Three"); Assert.AreEqual("[[One], 3, $[One, Two, Three], 0, null]", DumpQueue(queue, true)); }
public void EmptySnocTest() { var ex = AssertThrows <NullReferenceException>(() => PhysicistsQueue <string> .Snoc(null, "Item")); Assert.AreEqual("Object reference not set to an instance of an object.", ex.Message); }