aboutsummaryrefslogtreecommitdiffstats
path: root/main.cpp
diff options
context:
space:
mode:
authorGav Wood <i@gavwood.com>2014-05-28 17:52:42 +0800
committerGav Wood <i@gavwood.com>2014-05-28 17:52:42 +0800
commita418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12 (patch)
tree70848a6e3e86d0a4337f398b9904a9f8c26ace63 /main.cpp
parent305ddf1fed4640c0a9ce9c3f693700c9dd9aea69 (diff)
downloaddexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar.gz
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar.bz2
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar.lz
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar.xz
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.tar.zst
dexon-solidity-a418c6c09c7cf6f0dd2f1a9cd0dd7ec9cc121c12.zip
Fixes for tests.
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp34
1 files changed, 33 insertions, 1 deletions
diff --git a/main.cpp b/main.cpp
index f30d5e89..35e56d19 100644
--- a/main.cpp
+++ b/main.cpp
@@ -20,6 +20,10 @@
* Main test functions.
*/
+#include <libethsupport/TrieDB.h>
+#include "TrieHash.h"
+#include "MemTrie.h"
+
#include <boost/test/unit_test.hpp>
int trieTest();
@@ -38,7 +42,35 @@ using namespace eth;
BOOST_AUTO_TEST_CASE(basic_tests)
{
- cnote << "Hello";
+ {
+ BasicMap m;
+ GenericTrieDB<BasicMap> d(&m);
+ d.init(); // initialise as empty tree.
+ MemTrie t;
+ for (int a = 0; a < 20; ++a)
+ {
+ StringMap m;
+ for (int i = 0; i < 20; ++i)
+ {
+ auto k = randomWord();
+ auto v = toString(i);
+ m.insert(make_pair(k, v));
+ t.insert(k, v);
+ d.insert(k, v);
+ assert(hash256(m) == t.hash256());
+ assert(hash256(m) == d.root());
+ }
+ while (!m.empty())
+ {
+ auto k = m.begin()->first;
+ d.remove(k);
+ t.remove(k);
+ m.erase(k);
+ assert(hash256(m) == t.hash256());
+ assert(hash256(m) == d.root());
+ }
+ }
+ }
/* RLPStream s;
BlockInfo::genesis().fillStream(s, false);