Files
@ 87a9ced6e7b5
Branch filter:
Location: Morevna/src/tests/test_hashtree.py - annotation
87a9ced6e7b5
647 B
text/x-python
batch push
bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa bacd3b2d37aa | import random
from unittest import TestCase
from hashtree import HashTree
from . import RedirectedOutput
random.seed(17)
def buildTree(leaves):
tree=HashTree(len(leaves))
for l in leaves:
tree.insertLeaf(l)
tree.buildTree()
return tree
class TestMorevna(RedirectedOutput,TestCase):
def test_batchUpdate(self):
leaves=[b"a" for i in range(8)]
t1=buildTree(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=buildTree(leaves)
t1.batchUpdate((k+t1.leafStart,leaves[k]) for k in keys[:i+1])
self.assertEqual(t1.store,t2.store)
|