From 3404b9ce7f97787b32ea4a407383828c10fefdb2 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 28 Dec 2013 16:50:14 +0100 Subject: [PATCH] tests: Factor out begin_tests(), end_tests() Signed-off-by: Markus Armbruster --- tests/actofgod-test | 20 ++------------------ tests/smoke-test | 13 +++---------- tests/test-common.sh | 27 +++++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 28 deletions(-) diff --git a/tests/actofgod-test b/tests/actofgod-test index 93b2b206..01abc3ff 100755 --- a/tests/actofgod-test +++ b/tests/actofgod-test @@ -29,27 +29,11 @@ WORLD_X 24 WORLD_Y 16 EOF -# Create world, hide creation output -src/util/files -e sandbox/etc/empire/econfig -f >/dev/null -cp -r sandbox/var/empire/tel sandbox/var/empire/empty.tel -start_server -src/client/empire POGO peter <"$srcdir"/tests/actofgod/init_script >/dev/null -stop_server -mv sandbox/var/empire/tel sandbox/var/empire/init.tel -mv sandbox/var/empire/empty.tel sandbox/var/empire/tel -mv sandbox/var/empire/journal.log sandbox/var/empire/init.journal.log -mv sandbox/var/empire/server.log sandbox/var/empire/init.server.log +begin_test "$srcdir"/tests/actofgod/init_script -# Start server -start_server - -# Feed input perl "$srcdir"/tests/actofgod/geninput.pl | src/client/empire POGO peter >/dev/null -# Stop server -stop_server - -src/util/empdump -e sandbox/etc/empire/econfig -x >sandbox/actofgod.xdump +end_test # Test completed; compare results cmp_out var/empire/server.log var/empire/journal.log actofgod.xdump diff --git a/tests/smoke-test b/tests/smoke-test index c5b0d376..f79a3b3d 100755 --- a/tests/smoke-test +++ b/tests/smoke-test @@ -25,13 +25,10 @@ fi create_sandbox -# Create world and start server -src/util/files -e sandbox/etc/empire/econfig -f >/dev/null -src/util/empdump -e sandbox/etc/empire/econfig -i "$srcdir"/tests/smoke/fairland.xdump -start_server +begin_test "$srcdir"/tests/smoke/fairland.xdump + src/client/empire POGO peter <"$srcdir"/tests/smoke/newcap_script >/dev/null -# Feed player input need_update= for i in "$srcdir"/tests/smoke/[0-9]* do @@ -59,10 +56,6 @@ EOF need_update=y done -# Stop server -stop_server +end_test -src/util/empdump -e sandbox/etc/empire/econfig -x >sandbox/smoke.xdump - -# Smoke test completed; compare results cmp_out var/empire/server.log var/empire/journal.log smoke.xdump diff --git a/tests/test-common.sh b/tests/test-common.sh index 124304a9..19d210d3 100644 --- a/tests/test-common.sh +++ b/tests/test-common.sh @@ -70,6 +70,33 @@ stop_server() done } +begin_test() +{ + src/util/files -e sandbox/etc/empire/econfig -f >/dev/null + case "$1" in + *.xdump) + src/util/empdump -e sandbox/etc/empire/econfig -i "$1" + ;; + *) + cp -r sandbox/var/empire/tel sandbox/var/empire/empty.tel + start_server + src/client/empire POGO peter <"$1" >/dev/null + stop_server + mv sandbox/var/empire/tel sandbox/var/empire/init.tel + mv sandbox/var/empire/empty.tel sandbox/var/empire/tel + mv sandbox/var/empire/journal.log sandbox/var/empire/init.journal.log + mv sandbox/var/empire/server.log sandbox/var/empire/init.server.log + ;; + esac + start_server +} + +end_test () +{ + stop_server + src/util/empdump -e sandbox/etc/empire/econfig -x >sandbox/$test.xdump +} + cmp_out() { local opt exp act nrm msg ret=0