From 63006f686d62240c7171bfebb90f6ec66fd15217 Mon Sep 17 00:00:00 2001 From: Markus Makela Date: Sat, 20 Dec 2014 16:15:13 +0200 Subject: [PATCH] Fixed rwsplit hint tests writing to source tree instead of the build tree. --- macros.cmake | 2 +- .../test/test_hints/CMakeLists.txt | 6 +- .../test/test_hints/rwsplit_hints.sh | 59 +++++++++---------- 3 files changed, 32 insertions(+), 35 deletions(-) diff --git a/macros.cmake b/macros.cmake index de842ea5c..174eb933b 100644 --- a/macros.cmake +++ b/macros.cmake @@ -33,7 +33,7 @@ macro(set_variables) set(TEST_PORT_RW "4006" CACHE STRING "port of read/write split router module") # port of read/write split router module with hints - set(TEST_PORT_RW_HINT "4006" CACHE STRING "port of read/write split router module with hints") + set(TEST_PORT_RW_HINT "4009" CACHE STRING "port of read/write split router module with hints") # master test server server_id set(TEST_MASTER_ID "3000" CACHE STRING "master test server server_id") diff --git a/server/modules/routing/readwritesplit/test/test_hints/CMakeLists.txt b/server/modules/routing/readwritesplit/test/test_hints/CMakeLists.txt index ed804382b..1aea27c7a 100644 --- a/server/modules/routing/readwritesplit/test/test_hints/CMakeLists.txt +++ b/server/modules/routing/readwritesplit/test/test_hints/CMakeLists.txt @@ -1,3 +1,3 @@ -add_test(NAME SimpleHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} simple_tests ${CMAKE_CURRENT_SOURCE_DIR}) -add_test(NAME ComplexHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} complex_tests ${CMAKE_CURRENT_SOURCE_DIR}) -add_test(NAME StackHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} stack_tests ${CMAKE_CURRENT_SOURCE_DIR}) +add_test(NAME SimpleHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh ${CMAKE_CURRENT_BINARY_DIR}/hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} ${CMAKE_CURRENT_SOURCE_DIR}/simple_tests ${CMAKE_CURRENT_BINARY_DIR}) +add_test(NAME ComplexHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh ${CMAKE_CURRENT_BINARY_DIR}/hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} ${CMAKE_CURRENT_SOURCE_DIR}/complex_tests ${CMAKE_CURRENT_BINARY_DIR}) +add_test(NAME StackHintTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit_hints.sh ${CMAKE_CURRENT_BINARY_DIR}/hints.log ${TEST_HOST} ${TEST_PORT_RW_HINT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD} ${CMAKE_CURRENT_SOURCE_DIR}/stack_tests ${CMAKE_CURRENT_BINARY_DIR}) diff --git a/server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh b/server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh index 1f751861f..67de5d4f6 100755 --- a/server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh +++ b/server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh @@ -7,16 +7,16 @@ TMASTER_ID=$4 TUSER=$5 TPWD=$6 TESTINPUT=$7 - +TESTFILE=$PWD/$(basename -z $TESTINPUT) if [ $# -lt $(( NARGS - 1 )) ] ; then -echo"" -echo "Wrong number of arguments, gave "$#" but "$(( NARGS - 1 ))" is required" -echo "" -echo "Usage :" -echo " rwsplit_hints.sh " -echo "" -exit 1 + echo"" + echo "Wrong number of arguments, gave "$#" but "$(( NARGS - 1 ))" is required" + echo "" + echo "Usage :" + echo " rwsplit_hints.sh " + echo "" + exit 1 fi if [ $# -eq $NARGS ] @@ -26,20 +26,18 @@ else TDIR=. fi -TESTINPUT=$TDIR/$TESTINPUT - RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ --silent\ --comment i=0 while read -r LINE do -TINPUT[$i]=`echo "$LINE"|awk '{split($0,a,":");print a[1]}'` -TRETVAL[$i]=`echo "$LINE"|awk '{split($0,a,":");print a[2]}'` -echo "${TINPUT[i]}" >> $TESTINPUT.sql -i=$((i+1)) + TINPUT[$i]=`echo "$LINE"|awk '{split($0,a,":");print a[1]}'` + TRETVAL[$i]=`echo "$LINE"|awk '{split($0,a,":");print a[2]}'` + echo "${TINPUT[i]}" >> $TESTFILE.sql + i=$((i+1)) done < $TESTINPUT -`$RUNCMD < $TESTINPUT.sql > $TESTINPUT.output` +`$RUNCMD < $TESTFILE.sql > $TESTFILE.output` x=0 crash=1 @@ -47,32 +45,31 @@ all_passed=1 while read -r TOUTPUT do -crash=0 -if [ "$TOUTPUT" != "${TRETVAL[x]}" -a "${TRETVAL[x]}" != "" ] -then - all_passed=0 - echo "$TESTINPUT:$((x + 1)): ${TINPUT[x]} FAILED, return value $TOUTPUT when ${TRETVAL[x]} was expected">>$TLOG; -fi -x=$((x+1)) -done < $TESTINPUT.output + crash=0 + if [ "$TOUTPUT" != "${TRETVAL[x]}" -a "${TRETVAL[x]}" != "" ] + then + all_passed=0 + echo "$TESTINPUT:$((x + 1)): ${TINPUT[x]} FAILED, return value $TOUTPUT when ${TRETVAL[x]} was expected">>$TLOG; + fi + x=$((x+1)) +done < $TESTFILE.output if [ $crash -eq 1 ] then all_passed=0 for ((v=0;v<$i;v++)) do - echo "${TINPUT[v]} FAILED, nothing was returned">>$TLOG; + echo "${TINPUT[v]} FAILED, nothing was returned">>$TLOG; done fi if [ $all_passed -eq 1 ] then - echo "Test set: PASSED">>$TLOG; -else - echo "Test set: FAILED">>$TLOG; -fi - -if [ $# -eq $NARGS ] -then + echo "Test set: PASSED">>$TLOG; cat $TLOG + exit 0 +else + echo "Test set: FAILED">>$TLOG; + cat $TLOG + exit 1 fi