From 2cb2aa58d003980af777bf37fbabbd91cf859fea Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Tue, 17 Mar 2015 20:12:22 +1100 Subject: [PATCH] ctdb-tests: Add "ctdb reloadnodes" unit tests A basic test and some for cross-node consistency checking. Signed-off-by: Martin Schwenke Reviewed-by: Amitay Isaacs --- ctdb/tests/tool/scripts/local.sh | 19 ++++++++++-- ctdb/tests/tool/stubby.reloadnodes.001.sh | 33 ++++++++++++++++++++ ctdb/tests/tool/stubby.reloadnodes.002.sh | 34 +++++++++++++++++++++ ctdb/tests/tool/stubby.reloadnodes.003.sh | 37 +++++++++++++++++++++++ 4 files changed, 120 insertions(+), 3 deletions(-) create mode 100755 ctdb/tests/tool/stubby.reloadnodes.001.sh create mode 100755 ctdb/tests/tool/stubby.reloadnodes.002.sh create mode 100755 ctdb/tests/tool/stubby.reloadnodes.003.sh diff --git a/ctdb/tests/tool/scripts/local.sh b/ctdb/tests/tool/scripts/local.sh index a6df54b1b05..6cdf4c5089f 100644 --- a/ctdb/tests/tool/scripts/local.sh +++ b/ctdb/tests/tool/scripts/local.sh @@ -44,13 +44,26 @@ setup_natgw () setup_nodes () { - debug "Setting up CTDB_NODES" + _pnn="$1" + + _v="CTDB_NODES${_pnn:+_}${_pnn}" + debug "Setting up ${_v}" # These will accumulate, 1 per test... but will be cleaned up at # the end. - export CTDB_NODES=$(mktemp --tmpdir="$TEST_VAR_DIR") + eval export "${_v}"=$(mktemp --tmpdir="$TEST_VAR_DIR") + + eval _f="\${${_v}}" + cat >"$_f" - cat >"$CTDB_NODES" + # You can't be too careful about what might be in the + # environment... so clean up when setting the default variable. + if [ -z "$_pnn" ] ; then + _n=$(wc -l "$CTDB_NODES" | awk '{ print $1 }') + for _i in $(seq 0 $_n) ; do + eval unset "CTDB_NODES_${_i}" + done + fi } simple_test () diff --git a/ctdb/tests/tool/stubby.reloadnodes.001.sh b/ctdb/tests/tool/stubby.reloadnodes.001.sh new file mode 100755 index 00000000000..7f54de7c22c --- /dev/null +++ b/ctdb/tests/tool/stubby.reloadnodes.001.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +. "${TEST_SCRIPTS_DIR}/unit.sh" + +define_test "3 nodes, no change" + +setup_nodes <