def test_add():
    hashtable = Hashtable()
    index = hashtable.hash("spam")
    assert hashtable.buckets[index] is None
    hashtable.add("spam", "eggs")
    bucket = hashtable.buckets[index]
    assert bucket
Ejemplo n.º 2
0
def test_hash_banana():
    ht = Hashtable()
    actual = ht.hash("banana")  # in range index
    assert 0 <= actual <= 1024
Ejemplo n.º 3
0
def test_hash_apple():
    ht = Hashtable()
    actual = ht.hash("apple")  # in range index
    assert 0 <= actual <= 1024
Ejemplo n.º 4
0
def test_hash_is_same_each_time():
    ht = Hashtable()
    assert ht.hash('test') == ht.hash('test')
Ejemplo n.º 5
0
def test_add_two_to_same_index():
    ht = Hashtable()
    ht.add('test', 'object')
    ht.add('test', 'array')
    assert ht._array[ht.hash('test')].head.data == ('test', 'array')
    assert ht._array[ht.hash('test')].head._next.data == ('test', 'object')
Ejemplo n.º 6
0
def test_add_one():
    ht = Hashtable()
    ht.add('test', 'object')
    assert ht._array[ht.hash('test')].head.data == ('test', 'object')
Ejemplo n.º 7
0
def test_add():
    ht = Hashtable()
    ht.size = 0
    ht.add("test_key", "test_value")
    ht.size = 1
    assert ht.buckets[ht.hash("test_key")].value == "test_value"
def test_hash_consistency():
    hashtable = Hashtable()
    key = "apple"
    index = hashtable.hash(key)
    actual = hashtable.hash(key)
    assert actual == index
def test_different_index():
    hashtable = Hashtable()
    key_a = "listen"
    key_b = "zilent"

    assert hashtable.hash(key_a) != hashtable.hash(key_b)
def test_same_index():
    hashtable = Hashtable()
    key_a = "listen"
    key_b = "silent"

    assert hashtable.hash(key_a) == hashtable.hash(key_b)