static void TestBasic() { var dict = stackalloc PtrIntDict[1]; Init(dict); Set(dict, 1, (void *)1); Should.Equal("(int)Get(dict, 1)", (int)Get(dict, 1), 1); Remove(dict, 1); Should.Null("Get(dict, 1)", Get(dict, 1)); }
static void TestRandomSetGetRemove() { var dict = stackalloc PtrIntDict[1]; Init(dict); var keyList = new System.Collections.Generic.List <int>(); var valList = new System.Collections.Generic.List <int>(); for (int i = 2; i < 100; i += 1) { int key = Fdb.Random(-0x8000000, 0x7fffffff); int val = Fdb.Random(-0x8000000, 0x7fffffff); if (val == 0) { val = 1; } Set(dict, key, (void *)val); keyList.Add(key); valList.Add(val); for (int j = 0; j < keyList.Count; j += 1) { Should.Equal("Get(dict, j)", (int)Get(dict, keyList[j]), valList[j]); } } for (int i = 0; i < keyList.Count; i += 1) { Remove(dict, keyList[i]); for (int j = 0; j < keyList.Count; j += 1) { if (j <= i) { Should.Null("Get(dict, j)", Get(dict, keyList[j])); } else { Should.Equal("Get(dict, j)", (int)Get(dict, keyList[j]), valList[j]); } } } }
static void TestSetGetRemove() { var dict = stackalloc PtrIntDict[1]; Init(dict); for (int i = 2; i < 100; i += 1) { Set(dict, i, (void *)i); } for (int i = 2; i < 100; i += 1) { Remove(dict, i); for (int j = 2; j < 100; j += 1) { if (j <= i) { Should.Null("Get(dict, j)", Get(dict, j)); } else { Should.Equal("Get(dict, j)", (int)Get(dict, j), j); } } } }