public void IsSynchronized() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); Assert.AreEqual(false, tkd.IsSynchronized); }
public void Contains_TwoKeyValueTriple() { List <TwoKeyValueTriple <string, int, int> > items = new List <TwoKeyValueTriple <string, int, int> >(); PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); for (int i = 0; i < POPSIZE; i++) { TwoKeyValueTriple <string, int, int> tkv = new TwoKeyValueTriple <string, int, int>(ptkd.kavalues[i], ptkd.kbvalues[i], ptkd.vvalues[i]); items.Add(tkv); } TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(); for (int i = 0; i < items.Count; i++) { tkd.Add(items[i]); } for (int i = 0; i < POPSIZE; i++) { if (!tkd.Contains(items[i])) { Assert.Fail(); } } Assert.Pass(); }
public void Count() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); Assert.AreEqual(POPSIZE, tkd.Count); }
public void Remove_Object() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); TwoKeyValueTriple <string, int, int> src1 = new TwoKeyValueTriple <string, int, int>(ptkd.kavalues[3], ptkd.kbvalues[3], ptkd.vvalues[3]); TwoKeyValueTriple <string, int, int> src2 = new TwoKeyValueTriple <string, int, int>(ptkd.kavalues[6], ptkd.kbvalues[6], ptkd.vvalues[6]); tkd.Remove((object)src1.KeyA); if (tkd.Contains(src1.KeyA)) { Assert.Fail(); } if (!tkd.Contains(src1.KeyB)) { Assert.Pass(); } tkd.Remove((object)src2.KeyA); if (tkd.Contains(src1.KeyA)) { Assert.Fail(); } if (!tkd.Contains(src2.KeyB)) { Assert.Pass(); } }
public void TwoKeyDictionary_TwoKeyDictionary() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> seeder = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(seeder, null, null); Assert.AreEqual(11, tkd.Count, "main.Coun"); Assert.AreEqual(11, tkd.AKeys.Count, "main.AKeys.Count"); Assert.AreEqual(11, tkd.BKeys.Count, "main.BKeys.Count"); Assert.AreEqual(11, tkd.Values.Count, "main.Values.Count"); tkd.Add(ptkd.kavalues[11], ptkd.kbvalues[11], ptkd.vvalues[11]); tkd.Add(ptkd.kavalues[12], ptkd.kbvalues[12], ptkd.vvalues[12]); Assert.AreEqual(13, tkd.Count); Assert.AreEqual(13, tkd.AKeys.Count); Assert.AreEqual(13, tkd.BKeys.Count); Assert.AreEqual(13, tkd.Values.Count); int result = -1; result = tkd["AbaloneShell"]; Assert.AreEqual(-2373699, result); result = tkd[12]; Assert.AreEqual(-2373699, unchecked ((int)0xFFDBC7BD)); }
public void TwoKeyDictionary_Capacity_IEqualityComparerAB() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(13, StringComparer.CurrentCultureIgnoreCase, new IntEqualityComparer()); for (int i = 0; i < 11; i++) { tkd.Add(ptkd.kavalues[i], ptkd.kbvalues[i], ptkd.vvalues[i]); } Assert.AreEqual(11, tkd.Count, "main.Coun"); Assert.AreEqual(11, tkd.AKeys.Count, "main.AKeys.Count"); Assert.AreEqual(11, tkd.BKeys.Count, "main.BKeys.Count"); Assert.AreEqual(11, tkd.Values.Count, "main.Values.Count"); tkd.Add(ptkd.kavalues[11], ptkd.kbvalues[11], ptkd.vvalues[11]); tkd.Add(ptkd.kavalues[12], ptkd.kbvalues[12], ptkd.vvalues[12]); Assert.AreEqual(13, tkd.Count); Assert.AreEqual(13, tkd.AKeys.Count); Assert.AreEqual(13, tkd.BKeys.Count); Assert.AreEqual(13, tkd.Values.Count); int result = -1; result = tkd["ABALONESHELL"]; Assert.AreEqual(-2373699, result); result = tkd[12]; Assert.AreEqual(-2373699, unchecked ((int)0xFFDBC7BD)); }
public void CopyTo_TwoKeyValueTriple() { TwoKeyValueTriple <string, int, int>[] items = new TwoKeyValueTriple <string, int, int> [15]; PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); tkd.CopyTo(items, 0); int count = items.Length; }
public void TryGetValueKeyB() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); int result; tkd.TryGetValueKeyB(ptkd.kbvalues[6], out result); Assert.AreEqual(ptkd.vvalues[6], result); }
public void ContainsValue() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); if (!tkd.ContainsValue(ptkd.vvalues[9])) { Assert.Fail(); } }
public void RemoveKeyB() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); if (!tkd.RemoveKeyB(ptkd.kbvalues[5])) { Assert.Fail(); } if (!tkd.Contains(ptkd.kavalues[5])) { Assert.Pass(); } }
public void IEnumerable_GetEnumerator() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); foreach (TwoKeyValueTriple <string, int, int> tkvt in tkd) { if (!tkd.ContainsKeyA(tkvt.KeyA)) { Assert.Fail(); } } Assert.Pass(); }
public void Add() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); foreach (string akey in tkd.AKeys) { if (!tkd.ContainsKeyA(akey)) { Assert.Fail(); } } Assert.Pass(); }
public void TValue_TKeyB_Key() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); for (int i = 0; i < POPSIZE; i++) { if (ptkd.vvalues[i] != tkd[ptkd.kbvalues[i]]) { Assert.Fail(); } } Assert.Pass(); }
public void Contains_Object() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); object keya = ptkd.kavalues[3]; object keyb = ptkd.kbvalues[6]; if (!tkd.Contains(keya)) { Assert.Fail(); } if (!tkd.Contains(keyb)) { Assert.Fail(); } }
public void TwoKeyDictionary_TwoKeyDictionary_IEqualityComparerAB() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> seeder = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(seeder, StringComparer.CurrentCultureIgnoreCase, new IntEqualityComparer()); Assert.AreEqual(11, tkd.Count, "main.Coun"); Assert.AreEqual(11, tkd.AKeys.Count, "main.AKeys.Count"); Assert.AreEqual(11, tkd.BKeys.Count, "main.BKeys.Count"); Assert.AreEqual(11, tkd.Values.Count, "main.Values.Count"); tkd.Add(ptkd.kavalues[11], ptkd.kbvalues[11], ptkd.vvalues[11]); tkd.Add(ptkd.kavalues[12], ptkd.kbvalues[12], ptkd.vvalues[12]); Assert.AreEqual(13, tkd.Count); Assert.AreEqual(13, tkd.AKeys.Count); Assert.AreEqual(13, tkd.BKeys.Count); Assert.AreEqual(13, tkd.Values.Count); }
public void ICollection_TKeyA() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); ICollection <string> ika = tkd.AKeys; Assert.AreEqual(tkd.Count, ika.Count); foreach (string akey in ika) { if (!tkd.ContainsKeyA(akey)) { Assert.Fail(); } } Assert.Pass(); }
public void ICollection_TValue() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); ICollection <int> ikb = tkd.Values; Assert.AreEqual(tkd.Count, ikb.Count); foreach (int bkey in ikb) { if (!tkd.ContainsValue(bkey)) { Assert.Fail(); } } Assert.Pass(); }
public void Add_TwoKeyValueTriple() { List <TwoKeyValueTriple <string, int, int> > items = new List <TwoKeyValueTriple <string, int, int> >(); PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); for (int i = 0; i < POPSIZE; i++) { TwoKeyValueTriple <string, int, int> tkv = new TwoKeyValueTriple <string, int, int>(ptkd.kavalues[i], ptkd.kbvalues[i], ptkd.vvalues[i]); items.Add(tkv); } TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(); for (int i = 0; i < items.Count; i++) { tkd.Add(items[i]); } Assert.AreEqual(items.Count, tkd.Count); }
public void IEnumerable_TValue_IReadOnlyTwoKeyDictionary_Values() { // foreach is meant to iterate over a container, making sure each item is // visited exactly once, without changing the container. PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); int count = 0; List <int> items = new List <int>(ptkd.vvalues); foreach (TwoKeyValueTriple <string, int, int> irtkd in tkd) { if (!items.Contains(irtkd.Value)) { Assert.Fail(); } count++; } // checking it the enumeration has iterated through each element Assert.AreEqual(tkd.Count, count); }
public void Remove_TwoKeyValueTriple() { PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); TwoKeyDictionary <string, int, int> tkd = ptkd.GetLoadedTwoKeyDictionary(POPSIZE); TwoKeyValueTriple <string, int, int>[] items = new TwoKeyValueTriple <string, int, int> [tkd.Count]; for (int i = 0; i < tkd.Count; i++) { TwoKeyValueTriple <string, int, int> tkvt = new TwoKeyValueTriple <string, int, int>(ptkd.kavalues[i], ptkd.kbvalues[i], ptkd.vvalues[i]); items[i] = tkvt; } if (!tkd.Remove(items[5])) { Assert.Fail(); } if (!tkd.Contains(items[5])) { Assert.Pass(); } }
public void Add_Object() { List <Object[]> items = new List <Object[]>(); PackTwoKeyDictionary ptkd = new PackTwoKeyDictionary(); for (int i = 0; i < POPSIZE; i++) { object[] obj = new object[3]; obj[0] = ptkd.kavalues[i]; obj[1] = ptkd.kbvalues[i]; obj[2] = ptkd.vvalues[i]; items.Add(obj); } TwoKeyDictionary <string, int, int> tkd = new TwoKeyDictionary <string, int, int>(); for (int i = 0; i < items.Count; i++) { tkd.Add(items[i][0], items[i][1], items[i][2]); } Assert.AreEqual(items.Count, tkd.Count); }