Files
@ fef26609c4ee
Branch filter:
Location: Morevna/src/tests/test_hashtree.py - annotation
fef26609c4ee
647 B
text/x-python
fix: a meaningful message when running without a command
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)
|