Exemple #1
0
        public void TestSingleLinkedLists()
        {
            IKataList list = new singlelinked.List();

            Assert.IsNull(list.Find("fred"));

            list.Add("fred");
            Assert.AreEqual("fred", list.Find("fred").Value);
            Assert.IsNull(list.Find("wilma"));
            list.Add("wilma");
            Assert.AreEqual("fred", list.Find("fred").Value);
            Assert.AreEqual("wilma", list.Find("wilma").Value);
            CollectionAssert.AreEqual(new string[] { "fred", "wilma" }, list.Values);

            list = new singlelinked.List();
            list.Add("fred");
            list.Add("wilma");
            list.Add("betty");
            list.Add("barney");
            CollectionAssert.AreEqual(new[] { "fred", "wilma", "betty", "barney" }, list.Values);
            list.Delete(list.Find("wilma"));
            CollectionAssert.AreEqual(new[] { "fred", "betty", "barney" }, list.Values);
            list.Delete(list.Find("barney"));
            CollectionAssert.AreEqual(new[] { "fred", "betty" }, list.Values);
            list.Delete(list.Find("fred"));
            CollectionAssert.AreEqual(new[] { "betty" }, list.Values);
            list.Delete(list.Find("betty"));
            CollectionAssert.AreEqual(new string[] { }, list.Values);
        }
        public void TestSingleLinkedLists()
        {
            IKataList list = new singlelinked.List();

            Assert.IsNull(list.Find("fred"));

            list.Add("fred");
            Assert.AreEqual("fred", list.Find("fred").Value);
            Assert.IsNull(list.Find("wilma"));
            list.Add("wilma");
            Assert.AreEqual("fred", list.Find("fred").Value);
            Assert.AreEqual("wilma", list.Find("wilma").Value);
            CollectionAssert.AreEqual(new string[] { "fred", "wilma" }, list.Values);

            list = new singlelinked.List();
            list.Add("fred");
            list.Add("wilma");
            list.Add("betty");
            list.Add("barney");
            CollectionAssert.AreEqual(new[] { "fred", "wilma", "betty", "barney" }, list.Values);
            list.Delete(list.Find("wilma"));
            CollectionAssert.AreEqual(new[] { "fred", "betty", "barney" }, list.Values);
            list.Delete(list.Find("barney"));
            CollectionAssert.AreEqual(new[] { "fred", "betty" }, list.Values);
            list.Delete(list.Find("fred"));
            CollectionAssert.AreEqual(new[] { "betty" }, list.Values);
            list.Delete(list.Find("betty"));
            CollectionAssert.AreEqual(new string[] { }, list.Values);
        }