public void Complex() { var dic = new DicS <int>(1000); dic.Clear(); Assert.AreEqual(0, dic.Count); dic.Add("First", 1); dic.Add("Second", 2); Assert.AreEqual(2, dic.Count); Assert.AreEqual(1, dic["first"]); Assert.AreEqual(1, dic.Get("FIRST")); Assert.AreEqual(2, dic["Second"]); var dicAdd = new DicS <int>(); dicAdd.Add("second", 22); dicAdd.Add("third", 33); dic.AddDic(dicAdd); Assert.AreEqual(3, dic.Count); Assert.IsTrue(dic.ContainsKey("THIRD")); Assert.IsTrue(dic.ContainsKey("Second")); Assert.AreEqual(56, dic.Values.Sum()); dic.AddDic(dicAdd); Assert.AreEqual(3, dic.Count); Assert.AreEqual(1, dic["first"]); Assert.AreEqual(22, dic["second"]); Assert.AreEqual(33, dic["third"]); dic.Remove((k, v) => v == 33 || k.ToLower() == "second"); Assert.AreEqual(1, dic.Count); Assert.IsTrue(dic.ContainsKey("First")); Assert.IsFalse(dic.ContainsKey("Second")); }