From 38edc428eb7dbe9868d2663a355c774b8ca8e17a Mon Sep 17 00:00:00 2001 From: zelig Date: Mon, 5 Jan 2015 01:00:23 +0000 Subject: [PATCH] integration tests - regenerate chains consistently - separate peer (nodial, maxpeer 1, loglevel 0) and test_node - improve scripts, clean up code - include js file, define sleep function - add 02 --- eth/test/bootstrap.sh | 8 ++++---- eth/test/chains/00.chain | Bin 11388 -> 9726 bytes eth/test/chains/01.chain | Bin 15820 -> 13881 bytes eth/test/chains/02.chain | Bin 15266 -> 14989 bytes eth/test/chains/03.chain | Bin 20806 -> 18590 bytes eth/test/chains/04.chain | Bin 18036 -> 20529 bytes eth/test/mine.sh | 14 +++++++------- eth/test/run.sh | 23 +++++++++++------------ eth/test/tests/00.sh | 16 +++++----------- eth/test/tests/01.sh | 25 ++++++++++--------------- eth/test/tests/common.sh | 9 ++++++--- 11 files changed, 43 insertions(+), 52 deletions(-) diff --git a/eth/test/bootstrap.sh b/eth/test/bootstrap.sh index 78114dbe64..3da038be8b 100644 --- a/eth/test/bootstrap.sh +++ b/eth/test/bootstrap.sh @@ -2,8 +2,8 @@ # bootstrap chains - used to regenerate tests/chains/*.chain mkdir -p chains -bash ./mine.sh 00 15 +bash ./mine.sh 00 10 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 +bash ./mine.sh 02 10 00 +bash ./mine.sh 03 5 02 +bash ./mine.sh 04 10 02 \ No newline at end of file diff --git a/eth/test/chains/00.chain b/eth/test/chains/00.chain index b1f53d539848cadb85c7eb8cf5df7e7bf42d2ed7..ad3c05b24af70b3e02afbde9aa0c4911f56432ee 100755 GIT binary patch literal 9726 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
Gm=vJ7a&95t7OOcj%!t-TGvCba{^a2} z*hk~lLSgTML$SAs81jgH+MP_AkjTc{kn;NO&XnQgod|{=o&9Y{EPm4k>%HT_A?5D7V&dP->{(4x~Pk|Gly+Utaq$FKA++RBj^34|FqVKnN5X0d@e|5`{$x mr6Fats&GZvRi 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 TrgZwCaAh%5FbZbH+|u%2k2mOn diff --git a/eth/test/chains/01.chain b/eth/test/chains/01.chain index 1ed47885c1978a9d7949d41f9a9514e5f5cda8a5..56c9aef65f5261789bb709f57bf937d547a4d660 100755 GIT binary patch literal 13881 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 literal 15820 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 ahW1qkqKm@j)fQy-KEG64r_Z~q@*c7t#L diff --git a/eth/test/chains/03.chain b/eth/test/chains/03.chain index 8524881ab35515fc6be7d48f029406bcf95c9fb0..1cc7570ab47355133f5ef06a9a3c89580cf866d3 100755 GIT binary patch literal 18590 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 /tmp/eth.test/mine.tmp & PID=$! sleep 1 -echo "killing $PID" kill $PID +cat /tmp/eth.test/mine.tmp | grep 'exporting' diff --git a/eth/test/run.sh b/eth/test/run.sh index bef8c80bfa..bd5c753a99 100644 --- a/eth/test/run.sh +++ b/eth/test/run.sh @@ -3,10 +3,12 @@ # runs tests tests/testid0.sh tests/testid1.sh ... # without arguments, it runs all tests +. tests/common.sh + if [ "$#" -eq 0 ]; then for file in tests/*.sh; do i=`basename $file .sh` - TESTS="$TESTS $i" + TESTS="$TESTS $NAME" done else TESTS=$@ @@ -16,19 +18,18 @@ ETH=../../ethereum DIR="/tmp/eth.test/nodes" TIMEOUT=10 -mkdir -p $DIR mkdir -p $DIR/js echo "running tests $TESTS" -for i in $TESTS; do +for NAME in $TESTS; do PIDS= - CHAIN="tests/$i.chain" - JSFILE="$DIR/$i/js" - CHAIN_TEST="$DIR/$i/chain" + CHAIN="tests/$NAME.chain" + JSFILE="$DIR/js/$NAME.js" + CHAIN_TEST="$DIR/$NAME/chain" - # OUT="$DIR/out" - echo "RUN: test $i" - . tests/$i.sh + echo "RUN: test $NAME" + cat tests/common.js > $JSFILE + . tests/$NAME.sh sleep $TIMEOUT echo "timeout after $TIMEOUT seconds: killing $PIDS" kill $PIDS @@ -47,6 +48,4 @@ for i in $TESTS; do else echo PASS fi -done - - +done \ No newline at end of file diff --git a/eth/test/tests/00.sh b/eth/test/tests/00.sh index 9d13acb586..9c5077164b 100644 --- a/eth/test/tests/00.sh +++ b/eth/test/tests/00.sh @@ -1,19 +1,13 @@ #!/bin/bash -. `dirname $BASH_SOURCE`/common.sh TIMEOUT=4 -ID=00 -JSFILE="$DIR/js/$ID.js" -echo $JSFILE -cat > $JSFILE <> $JSFILE < $JSFILE <> $JSFILE <