From f91a39e43cd6032d75a00404f3e17182107be469 Mon Sep 17 00:00:00 2001 From: zelig Date: Sat, 3 Jan 2015 09:41:01 +0000 Subject: [PATCH] automated integration tests for eth protocol and blockpool --- eth/test/bootstrap.sh | 9 +++++++ eth/test/chains/00.chain | Bin 0 -> 11388 bytes eth/test/chains/01.chain | Bin 0 -> 15820 bytes eth/test/chains/02.chain | Bin 0 -> 15266 bytes eth/test/chains/03.chain | Bin 0 -> 20806 bytes eth/test/chains/04.chain | Bin 0 -> 18036 bytes eth/test/mine.sh | 20 +++++++++++++++ eth/test/run.sh | 52 +++++++++++++++++++++++++++++++++++++++ eth/test/tests/00.chain | 1 + eth/test/tests/00.sh | 19 ++++++++++++++ eth/test/tests/01.sh | 23 +++++++++++++++++ eth/test/tests/common.sh | 17 +++++++++++++ 12 files changed, 141 insertions(+) create mode 100644 eth/test/bootstrap.sh create mode 100755 eth/test/chains/00.chain create mode 100755 eth/test/chains/01.chain create mode 100755 eth/test/chains/02.chain create mode 100755 eth/test/chains/03.chain create mode 100755 eth/test/chains/04.chain create mode 100644 eth/test/mine.sh create mode 100644 eth/test/run.sh create mode 120000 eth/test/tests/00.chain create mode 100644 eth/test/tests/00.sh create mode 100644 eth/test/tests/01.sh create mode 100644 eth/test/tests/common.sh diff --git a/eth/test/bootstrap.sh b/eth/test/bootstrap.sh new file mode 100644 index 0000000000..78114dbe64 --- /dev/null +++ b/eth/test/bootstrap.sh @@ -0,0 +1,9 @@ +#!/bin/bash +# bootstrap chains - used to regenerate tests/chains/*.chain + +mkdir -p chains +bash ./mine.sh 00 15 +bash ./mine.sh 01 5 00 +bash ./mine.sh 02 5 00 +bash ./mine.sh 03 5 01 +bash ./mine.sh 04 5 01 \ No newline at end of file diff --git a/eth/test/chains/00.chain b/eth/test/chains/00.chain new file mode 100755 index 0000000000000000000000000000000000000000..b1f53d539848cadb85c7eb8cf5df7e7bf42d2ed7 GIT binary patch literal 11388 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 TrgZwCaAh%5FbZbH+|u%2k2mOn literal 0 HcmV?d00001 diff --git a/eth/test/chains/01.chain b/eth/test/chains/01.chain new file mode 100755 index 0000000000000000000000000000000000000000..1ed47885c1978a9d7949d41f9a9514e5f5cda8a5 GIT binary patch literal 15820 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 ahW1qkqKm@j)fQy-KEG64r_Z~q@*c7t#L literal 0 HcmV?d00001 diff --git a/eth/test/chains/03.chain b/eth/test/chains/03.chain new file mode 100755 index 0000000000000000000000000000000000000000..8524881ab35515fc6be7d48f029406bcf95c9fb0 GIT binary patch literal 20806 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/dev/null ; then + echo "chain ok: $CHAIN=$CHAIN_TEST" + else + echo "FAIL: chains differ: expected $CHAIN ; got $CHAIN_TEST" + continue + fi + fi + ERRORS=$DIR/errors + if [ -r "$ERRORS" ]; then + echo "FAIL: " + cat $ERRORS + else + echo PASS + fi +done + + diff --git a/eth/test/tests/00.chain b/eth/test/tests/00.chain new file mode 120000 index 0000000000..9655cb3df7 --- /dev/null +++ b/eth/test/tests/00.chain @@ -0,0 +1 @@ +../chains/01.chain \ No newline at end of file diff --git a/eth/test/tests/00.sh b/eth/test/tests/00.sh new file mode 100644 index 0000000000..9d13acb586 --- /dev/null +++ b/eth/test/tests/00.sh @@ -0,0 +1,19 @@ +#!/bin/bash +. `dirname $BASH_SOURCE`/common.sh + +TIMEOUT=4 +ID=00 +JSFILE="$DIR/js/$ID.js" + +echo $JSFILE +cat > $JSFILE < $JSFILE <