diff --git a/src/tests/test_hashtree.py b/src/tests/test_hashtree.py
new file mode 100644
--- /dev/null
+++ b/src/tests/test_hashtree.py
@@ -0,0 +1,31 @@
+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)