Files
@ 6a0ab4fe9f5e
Branch filter:
Location: Morevna/src/tests/test_hashtree.py - annotation
6a0ab4fe9f5e
674 B
text/x-python
changed naming to snake case. sadly no love for camel case in this world
bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa 6a0ab4fe9f5e 5c80ca07f00c bacd3b2d37aa 6a0ab4fe9f5e 6a0ab4fe9f5e bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa 5c80ca07f00c 6a0ab4fe9f5e 5c80ca07f00c 6a0ab4fe9f5e 5c80ca07f00c bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa 5c80ca07f00c 6a0ab4fe9f5e 6a0ab4fe9f5e 5c80ca07f00c | import random
from unittest import TestCase
from hashtree import HashTree
from . import RedirectedOutput
random.seed(17)
def build_tree(leaves):
tree = HashTree(len(leaves))
for l in leaves:
tree.insert_leaf(l)
tree.build_tree()
return tree
class TestMorevna(RedirectedOutput, TestCase):
def test_batch_update(self):
leaves = [b"a" for i in range(8)]
t1 = build_tree(leaves)
keys = list(range(8))
for i in range(8):
random.shuffle(keys)
for k in keys[:i+1]:
leaves[k] = bytes([random.randrange(256)])
t2 = build_tree(leaves)
t1.batch_update((k + t1.leaf_start, leaves[k]) for k in keys[:i + 1])
self.assertEqual(t1.store, t2.store)
|