def test_can_retrieve_proper_info_with_collisions2():
  ht = HashTable()
  collision_key = ht.find_collision_key('babies')
  ht.add('babies', 55)
  ht.add(collision_key, 10000000)
  collision_key2 = ht.find_collision_key('goats')
  ht.add('goats', 99)
  ht.add(collision_key2, 9887766554433231)
  assert (ht.get('babies') == 55) and (ht.get('goats') == 99) and (ht.get(collision_key) == 10000000)
  
    def setUp(self):
        self.test_hash_table = HashTable()

        self.test_hash_table.put(54, "cat")
        self.test_hash_table.put(26, "dog")
        self.test_hash_table.put(93, "lion")
        self.test_hash_table.put(17, "tiger")
        self.test_hash_table.put(77, "bird")
        self.test_hash_table.put(31, "cow")
        self.test_hash_table.put(44, "goat")
        self.test_hash_table.put(55, "pig")
        self.test_hash_table.put(20, "chicken")
def test_adding_a_key_and_value_to_hashtable():
  hash_table = HashTable()
  hash_table.add('yahia','24')
  assert hash_table.get('yahia') == '24'
def test_retrieving_based_on_a_key_returns_the_value_stored():
  hash_table = HashTable()
  hash_table.add('yahia','24')
  assert hash_table.get('yahia') == '24'
def test_retrieve_a_value_from_a_bucket_within_the_hashtable_that_has_a_collision():
  hash_table = HashTable()
  hash_table.add('yahia','24')
  hash_table.add('yaiha','30')
  assert hash_table.get('yahia') == '24'
  assert hash_table.get('yaiha') == '30'
def test_hash_a_key_to_an_in_range_value():
  hash_table = HashTable()
  assert hash_table.hash('8000')< hash_table.size
def test_returns_null_for_a_key_that_does_not_exist_in_the_hashtable():
  hash_table = HashTable()
  assert hash_table.get('test') == None
def test_handle_a_collision_within_the_hashtable():
  hash_table = HashTable()
  hash_table.add('yahia','24')
  hash_table.add('yaiha','30')
  print(hash_table.contains('yahia'))
  print(hash_table.contains('yaiha'))
Пример #9
0
 def setUp(self):
     self.hash_table = HashTable(4)
def test_get_value_works():
  ht = HashTable()
  ht.add('babies', 25)
  assert ht.get('babies') == 25
def test_table_has_add():
  ht = HashTable()
  assert ht.add
def test_can_retrieve_proper_info_with_collisions():
  ht = HashTable()
  collision_key = ht.find_collision_key('babies')
  ht.add('babies', 55)
  ht.add(collision_key, 10000000)
  assert ht.get('babies') == 55
def test_random_collision():
  ht = HashTable()
  collision_key = ht.find_collision_key('babies')
  assert (collision_key != 'babies') and (ht.hash('babies') == ht.hash(collision_key))
def test_multiple_insertions_get():
  ht = HashTable()
  ht.add('babies', 25)
  ht.add('goats', 99)
  assert ht.get('goats') == 99
def test_hash_is_in_range():
  ht = HashTable()
  index = ht.hash('babies')
  assert 0 <= index <= 1024
 def test_init_works_correct(self):
     self.assertEqual(HashTable().size, 11)
     self.assertEqual(HashTable().slots, [None]*self.test_hash_table.size)
     self.assertEqual(HashTable().data, [None]*self.test_hash_table.size)
def test_table_has_hash():
  ht = HashTable()
  assert ht.hash
def test_table_has_get():
  ht = HashTable()
  assert ht.get
def test_add_actually_adds():
  ht = HashTable()
  ht.add('babies', 25)
  assert ht.contains('babies')
Пример #20
0
from hash_table.hash_table import HashTable

hash_table = HashTable(10)
hash_table.set(100, 1)
hash_table.set(25, 2)
hash_table.set(25, 3)

a = hash_table.get(25)
print(a)
print(hash_table.keys())
print(hash_table.values())
print(hash_table.contains_key(73))
print(hash_table.contains_value(5))

for key in hash_table.keys():
    print(key, hash_table.get(key))
def test_table_has_contains():
  ht = HashTable()
  assert ht.contains