def testSize(self): del(self.c) self.c = cuckoo.cuckoohash() self.assertEqual(len(self.c), 0) self.c.insert('a', {'a': 100, 'b': 22}) self.c.insert('b', {'b': 'bar'}) self.c.insert('c', {'c': 10}) self.c.insert('d', {'d':20}) self.c.insert('e', {'e': 'g'}) self.assertEqual(len(self.c), 5) self.c.delete('a') self.assertEqual(len(self.c), 4)
def testDelete(self): self.c = cuckoo.cuckoohash(10) self.c.insert('a', 'Foobar') self.assertEqual(self.c.has_key('a'), True) self.c.delete('a') self.assertEqual(self.c.has_key('a'), False) # test __delitem__ self.c.insert('a', 'Foobar') self.assertEqual(self.c.has_key('a'), True) del self.c['a'] self.assertEqual(self.c.has_key('a'), False)
def testItervalues(self): self.c = cuckoo.cuckoohash() self.c.insert('a', {'a': 100, 'b': 22}) self.c.insert('b', {'b': 'bar'}) self.c.insert('c', {'c': 10}) self.c.insert('d', {'d':20}) self.c.insert('e', {'e': 'g'}) values = [{'b': 'bar'}, {'c': 10}, {'d': 20}, {'e': 'g'}, {'a': 100, 'b': 22}] for v in self.c.itervalues(): self.assertEqual(v in values, True) values.remove(v) self.assertEqual(len(values), 0)
def testIterkeys(self): self.c = cuckoo.cuckoohash() self.c.insert('a', {'a': 100, 'b': 22}) self.c.insert('b', {'b': 'bar'}) self.c.insert('c', {'c': 10}) self.c.insert('d', {'d':20}) self.c.insert('e', {'e': 'g'}) values = [{'b': {'b': 'bar'}}, {'c': {'c': 10}}, {'d': {'d': 20}}, {'e': {'e': 'g'}}, {'a': {'a': 100, 'b': 22}}] keys = ['a', 'b', 'c', 'd', 'e'] for k in self.c.iterkeys(): self.assertEqual(k in keys, True) keys.remove(k) self.assertEqual(len(keys), 0)
def testIteritems(self): self.c = cuckoo.cuckoohash() self.c.insert('a', {'a': 100, 'b': 22}) self.c.insert('b', {'b': 'bar'}) self.c.insert('c', {'c': 10}) self.c.insert('d', {'d':20}) self.c.insert('e', {'e': 'g'}) values = [{'b': {'b': 'bar'}}, {'c': {'c': 10}}, {'d': {'d': 20}}, {'e': {'e': 'g'}}, {'a': {'a': 100, 'b': 22}}] for k, v in self.c.iteritems(): x = {k: v} self.assertEqual(x in values, True) values.remove(x) self.assertEqual(len(values), 0)
def setUp(self): self.c = cuckoo.cuckoohash(10)