diff --git a/CMakeLists.txt b/CMakeLists.txt index a6f75130f..83e246e87 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,7 +32,7 @@ if(GCOV) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov") endif() -if(STATIC_EMBEDDED) +if((NOT EMBEDDED_LIB) AND STATIC_EMBEDDED) find_file(EMBEDDED_LIB libmysqld.a PATHS /usr/lib /usr/lib64 PATH_SUFFIXES mysql mariadb) diff --git a/README b/README index cdc9b35ac..5a0e2eb23 100644 --- a/README +++ b/README @@ -152,6 +152,37 @@ max_connections=4096 Please check errmsg.sys is found in the MaxScale install_dir DEST/MaxScale/mysql +\section Building Building MaxScale with CMake + +You can also build MaxScale with CMake which makes the build process a bit more simple. + +All the same dependencies are required as with the normal MaxScale build with the addition of CMake +version 2.6 for regular builds and 2.8 or newer for package generation. + +CMake tries to find all the required directories and files on its own but if it can't find them or you wish to +explicitly state the locations you can pass additional options to CMake by using the -D flag. To confirm the variable +values, you can run CMake in interactive mode by using the -i flag or use the ccmake GUI. + +For example, to build MaxScale using CMake with a custom install location: + + cmake -DCMAKE_INSTALL_PREFIX=/usr/local/skysql + + make + + make install + +This generates the required makefiles in the current directory, compiles and links all the programs and installs +all the required files in their right places. + +Variables controlling the CMake build process: + +CMAKE_INSTALL_PREFIX= Install destination prefix, same as DEST +CMAKE_BUILD_TYPE=[Debug|Release] Type of the build +EMBEDDED_LIB= Path to the embedded library, filename included +MYSQL_DIR= Path to MySQL headers +STATIC_EMBEDDED=[Y|N] Link the static or the dynamic verson of the library +GCOV=[Y|N] Generate gcov output + \section Running Running MaxScale MaxScale consists of a core executable and a number of modules that implement diff --git a/log_manager/test/CMakeLists.txt b/log_manager/test/CMakeLists.txt index d378bdc7c..eb529ba0b 100644 --- a/log_manager/test/CMakeLists.txt +++ b/log_manager/test/CMakeLists.txt @@ -2,4 +2,4 @@ add_executable(testlog testlog.c) add_executable(testorder testorder.c) target_link_libraries(testlog utils pthread log_manager) target_link_libraries(testorder utils pthread log_manager) -add_test(NAME TestLogOrder COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/logorder.sh 500 0 500 logtest.log) \ No newline at end of file +add_test(NAME TestLogOrder COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/logorder.sh 500 0 500) \ No newline at end of file diff --git a/log_manager/test/logorder.sh b/log_manager/test/logorder.sh index bbdcaf0f7..aaad7ffd7 100755 --- a/log_manager/test/logorder.sh +++ b/log_manager/test/logorder.sh @@ -1,6 +1,6 @@ #! /bin/bash -if [[ $# -lt 4 ]] +if [[ $# -lt 3 ]] then echo "Usage: logorder.sh " echo "To disable log flushing, use 0 for flush frequency" @@ -12,7 +12,6 @@ rm *.log #Create large messages $PWD/testorder $1 $2 $3 -TESTLOG=$4 MCOUNT=$1 BLOCKS=`cat skygw_err1.log |tr -s ' '|grep -o 'block:[[:digit:]]\+'|cut -d ':' -f 2` @@ -20,23 +19,24 @@ MESSAGES=`cat skygw_err1.log |tr -s ' '|grep -o 'message|[[:digit:]]\+'|cut -d ' prev=0 error=0 - +all_errors=0 for i in $BLOCKS do if [[ $i -le $prev ]] then error=1 - echo "block mismatch: $i was after $prev." >> $TESTLOG + all_errors=1 + echo "block mismatch: $i was after $prev." fi prev=$i done if [[ error -eq 0 ]] then - echo "Block buffers were in order" >> $TESTLOG + echo "Block buffers were in order" else - echo "Error: block buffers were written in the wrong order" >> $TESTLOG + echo "Error: block buffers were written in the wrong order" fi prev=0 @@ -48,14 +48,16 @@ do if [[ $i -ne $(( prev + 1 )) ]] then error=1 - echo "message mismatch: $i was after $prev." >> $TESTLOG + all_errors=1 + echo "message mismatch: $i was after $prev." fi prev=$i done if [[ error -eq 0 ]] then - echo "Block buffer messages were in order" >> $TESTLOG + echo "Block buffer messages were in order" else - echo "Error: block buffer messages were written in the wrong order" >> $TESTLOG + echo "Error: block buffer messages were written in the wrong order" fi +exit $all_errors diff --git a/macros.cmake b/macros.cmake index 4965e3640..9dccf34cb 100644 --- a/macros.cmake +++ b/macros.cmake @@ -1,34 +1,46 @@ macro(set_maxscale_version) + #MaxScale version number set(MAXSCALE_VERSION_MAJOR "1") set(MAXSCALE_VERSION_MINOR "0") set(MAXSCALE_VERSION_PATCH "0") - set(MAXSCALE_VERSION "${MAXSCALE_VERSION_MAJOR}.${MAXSCALE_VERSION_MINOR}.${MAXSCALE_VERSION_PATCH}") + set(MAXSCALE_VERSION "${MAXSCALE_VERSION_MAJOR}.${MAXSCALE_VERSION_MINOR}.${MAXSCALE_VERSION_PATCH}-beta") endmacro() macro(set_testing_variables) - if(NOT TEST_LOG) - set(TEST_LOG "${CMAKE_SOURCE_DIR}/test/test_maxscale.log") - endif() - + # hostname or IP address of MaxScale's host if(NOT TEST_HOST) set(TEST_HOST "127.0.0.1") endif() - if(NOT TEST_PORT) - set(TEST_PORT "4006") + # port of read connection router module + if(NOT TEST_PORT_RW) + set(TEST_PORT_RW "4008") endif() + # port of read/write split router module + if(NOT TEST_PORT_RW) + set(TEST_PORT_RW "4006") + endif() + + # port of read/write split router module with hints + if(NOT TEST_PORT_RW_HINT) + set(TEST_PORT_RW_HINT "4006") + endif() + + # master's server_id if(NOT TEST_MASTER_ID) set(TEST_MASTER_ID "3000") endif() + # username of MaxScale user if(NOT TEST_USER) set(TEST_USER "maxuser") endif() + # password of MaxScale user if(NOT TEST_PASSWORD) set(TEST_PASSWORD "maxpwd") endif() diff --git a/query_classifier/test/canonical_tests/CMakeLists.txt b/query_classifier/test/canonical_tests/CMakeLists.txt index 4695d8045..c5ec3bf2d 100644 --- a/query_classifier/test/canonical_tests/CMakeLists.txt +++ b/query_classifier/test/canonical_tests/CMakeLists.txt @@ -1,4 +1,8 @@ file(COPY ${ERRMSG} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) add_executable(canonizer canonizer.c) target_link_libraries(canonizer pthread query_classifier z dl ssl aio crypt crypto rt m ${EMBEDDED_LIB} fullcore) -add_test(NAME TestCanonicalQuery COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/canontest.sh testcanon.log input.sql output.sql expected.sql) \ No newline at end of file +add_test(NAME TestCanonicalQuery COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/canontest.sh + $ + ${CMAKE_CURRENT_SOURCE_DIR}/input.sql + ${CMAKE_CURRENT_BINARY_DIR}/output.sql + ${CMAKE_CURRENT_SOURCE_DIR}/expected.sql) \ No newline at end of file diff --git a/query_classifier/test/canonical_tests/canontest.sh b/query_classifier/test/canonical_tests/canontest.sh index 8382103c1..dd9342fc1 100755 --- a/query_classifier/test/canonical_tests/canontest.sh +++ b/query_classifier/test/canonical_tests/canontest.sh @@ -1,21 +1,23 @@ #! /bin/sh -if [[ $# -ne 4 ]] +if [[ $# -lt 4 ]] then - echo "Usage: canontest.sh " + echo "Usage: canontest.sh " exit 0 fi -TESTLOG=$1 +EXECUTABLE=$1 INPUT=$2 OUTPUT=$3 EXPECTED=$4 DIFFLOG=diff.out -$PWD/canonizer $INPUT $OUTPUT +$EXECUTABLE $INPUT $OUTPUT diff $OUTPUT $EXPECTED > $DIFFLOG if [ $? -eq 0 ] then - echo "PASSED" >> $TESTLOG + echo "PASSED" else - echo "FAILED" >> $TESTLOG - echo "Diff output: " >> $TESTLOG - cat $DIFFLOG >> $TESTLOG + echo "FAILED" + echo "Diff output: " + cat $DIFFLOG + exit 1; fi +exit 0; diff --git a/server/core/test/CMakeLists.txt b/server/core/test/CMakeLists.txt index 5e68f24ea..8e0f54661 100644 --- a/server/core/test/CMakeLists.txt +++ b/server/core/test/CMakeLists.txt @@ -10,3 +10,4 @@ add_test(TestHash test_hash) add_test(TestSpinlock test_spinlock) add_test(TestFilter test_filter) add_test(TestAdminUsers test_adminusers) + diff --git a/server/modules/routing/readwritesplit/test/CMakeLists.txt b/server/modules/routing/readwritesplit/test/CMakeLists.txt index 607fbe6d0..cf5806ff1 100644 --- a/server/modules/routing/readwritesplit/test/CMakeLists.txt +++ b/server/modules/routing/readwritesplit/test/CMakeLists.txt @@ -1,2 +1,2 @@ -add_test(NAME ReadWriteSplitTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit.sh test.log ${TEST_HOST} ${TEST_PORT} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD}) -set_tests_properties(ReadWriteSplitTest PROPERTIES DEPENDS ExecutableTest) \ No newline at end of file +add_test(NAME ReadWriteSplitTest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/rwsplit.sh ${TEST_HOST} ${TEST_PORT_RW} ${TEST_MASTER_ID} ${TEST_USER} ${TEST_PASSWORD}) +set_tests_properties(ReadWriteSplitTest PROPERTIES DEPENDS WaitForExecutable) \ No newline at end of file diff --git a/server/modules/routing/readwritesplit/test/rwsplit.sh b/server/modules/routing/readwritesplit/test/rwsplit.sh index 6fefd8801..8d4d64234 100755 --- a/server/modules/routing/readwritesplit/test/rwsplit.sh +++ b/server/modules/routing/readwritesplit/test/rwsplit.sh @@ -1,11 +1,10 @@ #!/bin/sh -NARGS=6 -TLOG=$1 -THOST=$2 -TPORT=$3 -TMASTER_ID=$4 -TUSER=$5 -TPWD=$6 +NARGS=5 +THOST=$1 +TPORT=$2 +TMASTER_ID=$3 +TUSER=$4 +TPWD=$5 if [ $# != $NARGS ] ; then @@ -21,231 +20,231 @@ fi RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ --silent -TINPUT=test_transaction_routing2.sql +TINPUT=$PWD/test_transaction_routing2.sql TRETVAL=0 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_transaction_routing2b.sql +TINPUT=$PWD/test_transaction_routing2b.sql TRETVAL=0 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_transaction_routing3.sql +TINPUT=$PWD/test_transaction_routing3.sql TRETVAL=2 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TMASTER_ID" ]; then - echo "$TINPUT FAILED, return value $a when one of the slave IDs was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when one of the slave IDs was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_transaction_routing3b.sql +TINPUT=$PWD/test_transaction_routing3b.sql TRETVAL=2 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TMASTER_ID" ]; then - echo "$TINPUT FAILED, return value $a when one of the slave IDs was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when one of the slave IDs was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi # test implicit transaction, that is, not started explicitly, autocommit=0 -TINPUT=test_transaction_routing4.sql +TINPUT=$PWD/test_transaction_routing4.sql TRETVAL=0 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_transaction_routing4b.sql +TINPUT=$PWD/test_transaction_routing4b.sql TRETVAL=0 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi # set a var via SELECT INTO @, get data from master, returning server-id: put master server-id value in TRETVAL -TINPUT=select_for_var_set.sql +TINPUT=$PWD/select_for_var_set.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit1.sql +TINPUT=$PWD/test_implicit_commit1.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit2.sql +TINPUT=$PWD/test_implicit_commit2.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit3.sql +TINPUT=$PWD/test_implicit_commit3.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit4.sql +TINPUT=$PWD/test_implicit_commit4.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi TINPUT=test_implicit_commit5.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit6.sql +TINPUT=$PWD/test_implicit_commit6.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_implicit_commit7.sql +TINPUT=$PWD/test_implicit_commit7.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_autocommit_disabled1.sql +TINPUT=$PWD/test_autocommit_disabled1.sql TRETVAL=1 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_autocommit_disabled1b.sql +TINPUT=$PWD/test_autocommit_disabled1b.sql TRETVAL=1 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi # Disable autocommit in the first session and then test in new session that # it is again enabled. -TINPUT=test_autocommit_disabled2.sql +TINPUT=$PWD/test_autocommit_disabled2.sql TRETVAL=1 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=set_autocommit_disabled.sql -`$RUNCMD < ./$TINPUT` +TINPUT=$PWD/set_autocommit_disabled.sql +`$RUNCMD < $TINPUT` TINPUT=test_after_autocommit_disabled.sql TRETVAL=$TMASTER_ID -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" = "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when it was not accetable">>$TLOG; + echo "$TINPUT FAILED, return value $a when it was not accetable"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_sescmd.sql +TINPUT=$PWD/test_sescmd.sql TRETVAL=2 -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -a=`$RUNCMD < ./$TINPUT` +a=`$RUNCMD < $TINPUT` if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -TINPUT=test_temporary_table.sql -a=`$RUNCMD < ./$TINPUT` +TINPUT=$PWD/test_temporary_table.sql +a=`$RUNCMD < $TINPUT` TRETVAL=1 if [ "$a" != "$TRETVAL" ]; then - echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG; + echo "$TINPUT FAILED, return value $a when $TRETVAL was expected"; else - echo "$TINPUT PASSED">>$TLOG ; + echo "$TINPUT PASSED" ; fi -echo "-----------------------------------" >> $TLOG -echo "Session variables: Stress Test 1" >> $TLOG -echo "-----------------------------------" >> $TLOG +echo "-----------------------------------" +echo "Session variables: Stress Test 1" +echo "-----------------------------------" RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ -q\ -r -TINPUT=test_sescmd2.sql +TINPUT=$PWD/test_sescmd2.sql for ((i = 0;i<1000;i++)) do if [[ $(( i % 50 )) -eq 0 ]] @@ -261,17 +260,17 @@ do done if [[ "$err" == "" ]] then - echo "TEST PASSED" >> $TLOG + echo "TEST PASSED" else - echo "$err" >> $TLOG - echo "Test FAILED at iteration $((i+1))" >> $TLOG + echo "$err" + echo "Test FAILED at iteration $((i+1))" fi -echo "-----------------------------------" >> $TLOG -echo "Session variables: Stress Test 2" >> $TLOG -echo "-----------------------------------" >> $TLOG +echo "-----------------------------------" +echo "Session variables: Stress Test 2" +echo "-----------------------------------" echo "" err="" -TINPUT=test_sescmd3.sql +TINPUT=$PWD/test_sescmd3.sql for ((j = 0;j<1000;j++)) do if [[ $(( j % 50 )) -eq 0 ]] @@ -287,8 +286,8 @@ do done if [[ "$err" == "" ]] then - echo "TEST PASSED" >> $TLOG + echo "TEST PASSED" else - echo "Test FAILED at iteration $((j+1))" >> $TLOG + echo "Test FAILED at iteration $((j+1))" fi -echo "" >> $TLOG +echo "" diff --git a/server/test/CMakeLists.txt b/server/test/CMakeLists.txt index 3a07ab1ee..94e589032 100644 --- a/server/test/CMakeLists.txt +++ b/server/test/CMakeLists.txt @@ -1,5 +1,5 @@ -add_test(NAME ExecutableTest COMMAND maxscale) +add_test(NAME RunExecutable COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/startmaxscale.sh $ "-c ${CMAKE_BINARY_DIR}/") add_test(NAME WaitForExecutable COMMAND sleep 5) add_test(NAME KillExecutable COMMAND killall maxscale) -set_tests_properties(WaitForExecutable PROPERTIES DEPENDS ExecutableTest) -set_tests_properties(KillExecutable PROPERTIES DEPENDS ReadWriteSplitTest DEPENDS WaitForExecutable) +set_tests_properties(WaitForExecutable PROPERTIES DEPENDS RunExecutable) +set_tests_properties(KillExecutable PROPERTIES DEPENDS ReadWriteSplitTest)