public void TestRecall() {
Random r = new Random();
System.Collections.Hashtable ht = new System.Collections.Hashtable();
for(int i = 0; i < 128; i++) {
byte[] key_buf = new byte[ r.Next(1024) ];
r.NextBytes(key_buf);
MemBlock key = MemBlock.Reference(key_buf);
byte[] val_buf = new byte[ r.Next(1024) ];
r.NextBytes(val_buf);
MemBlock val = MemBlock.Reference(val_buf);
MemBlock old_v = Swap(key, val);
ht[key] = val;
Assert.IsNull(old_v, "old value is null");
}
foreach(System.Collections.DictionaryEntry de in ht) {
MemBlock recall_v = Read((MemBlock)de.Key);
Assert.AreEqual(recall_v, de.Value, "check recall");
}
}
/*