def test_hash(self): s = 7 m = 31 self.assertEqual(HashTable._hash(''), s) self.assertEqual(HashTable._hash('a'), s * m + ord('a')) self.assertEqual(HashTable._hash('hi'), (s * m + ord('h')) * m + ord('i'))
def test_bucket_add_duplicates_includes(): ht = HashTable() ht.add('apple', 43) ht.add('apple', 6) ht.add('apple', 643) apple_index = ht._hash('apple') ht.add('mango', 'steen') mango_index = ht._hash('mango') assert ht._hash_table[mango_index].includes('mango') == True assert ht._hash_table[apple_index].includes('mango') == False assert ht._hash_table[apple_index].includes('apple') == True
def test_hash(): ht = HashTable() hash_val = ht._hash('apple') assert hash_val == 847 assert ht._hash('apple') == hash_val
def test_bucket_includes(): ht = HashTable() ht.add('apple', 43) hash_val = ht._hash('apple') assert ht._hash_table[hash_val].includes('apple') == True assert ht._hash_table[hash_val].includes('mango') == False
def test_add_to_hash_table(): ht = HashTable() ht.add('apple', 43) hash_val = ht._hash('apple') assert ht._hash_table[hash_val].head.key == 'apple' assert ht._hash_table[hash_val].head.value == 43
def test_hash(self): s = 7 m = 31 self.assertEqual(HashTable._hash(''), s) self.assertEqual(HashTable._hash('a'), s*m + ord('a')) self.assertEqual(HashTable._hash('hi'), (s*m + ord('h'))*m + ord('i'))