tests for hints and changes in makefiles and configuration files to enable testing them through 'make testall'
This commit is contained in:
@ -14,13 +14,13 @@ RET := -1
|
||||
cleantests:
|
||||
- $(DEL) *.o
|
||||
- $(DEL) *~
|
||||
-$(MAKE) -C test_hints cleantests
|
||||
|
||||
|
||||
testall:
|
||||
-$(MAKE) cleantests
|
||||
-$(MAKE) DEBUG=Y buildtests
|
||||
-$(MAKE) runtests
|
||||
-$(MAKE) -C test_hints testall
|
||||
|
||||
buildtests:
|
||||
|
||||
@ -34,4 +34,3 @@ runtests:
|
||||
./rwsplit.sh $(TESTLOG) $(THOST) $(TPORT_RW) $(TMASTER_ID) $(TUSER) $(TPWD)
|
||||
@echo "" >> $(TESTLOG)
|
||||
@cat $(TESTLOG) >> $(TEST_MAXSCALE_LOG)
|
||||
-$(MAKE) -C test_hints runtests
|
||||
|
@ -16,7 +16,9 @@ RET := -1
|
||||
cleantests:
|
||||
- $(DEL) *.o
|
||||
- $(DEL) *~
|
||||
|
||||
- $(DEL) *.sql
|
||||
- $(DEL) *.output
|
||||
- $(DEL) *.log
|
||||
|
||||
testall:
|
||||
-$(MAKE) cleantests
|
||||
@ -27,11 +29,25 @@ buildtests:
|
||||
|
||||
|
||||
runtests:
|
||||
@echo "" > $(TESTLOG)
|
||||
@echo "" >> $(TESTLOG)
|
||||
@echo "-------------------------------" >> $(TESTLOG)
|
||||
@echo $(shell date) >> $(TESTLOG)
|
||||
@echo "Test Read/Write split router - hint routing" >> $(TESTLOG)
|
||||
@echo "-------------------------------" >> $(TESTLOG)
|
||||
./rwsplit_hints.sh $(TESTLOG) $(THOST) $(TPORT_RW) $(TMASTER_ID) $(TUSER) $(TPWD)
|
||||
@echo "Running simple tests" >> $(TESTLOG)
|
||||
@echo "" >> $(TESTLOG)
|
||||
./rwsplit_hints.sh $(TESTLOG) $(THOST) $(TPORT_RW_HINT) $(TMASTER_ID) $(TUSER) $(TPWD) simple_tests
|
||||
@echo "" >> $(TESTLOG)
|
||||
@echo "Running syntax error tests" >> $(TESTLOG)
|
||||
@echo "" >> $(TESTLOG)
|
||||
./syntax_check.sh $(TESTLOG) $(THOST) $(TPORT_RW_HINT) $(TMASTER_ID) $(TUSER) $(TPWD) error_tests
|
||||
@echo "" >> $(TESTLOG)
|
||||
@echo "Running complex tests" >> $(TESTLOG)
|
||||
@echo "" >> $(TESTLOG)
|
||||
./rwsplit_hints.sh $(TESTLOG) $(THOST) $(TPORT_RW_HINT) $(TMASTER_ID) $(TUSER) $(TPWD) complex_tests
|
||||
@echo "" >> $(TESTLOG)
|
||||
@echo "Running stack tests" >> $(TESTLOG)
|
||||
@echo "" >> $(TESTLOG)
|
||||
./rwsplit_hints.sh $(TESTLOG) $(THOST) $(TPORT_RW_HINT) $(TMASTER_ID) $(TUSER) $(TPWD) stack_tests
|
||||
@echo "" >> $(TESTLOG)
|
||||
@cat $(TESTLOG) >> $(TEST_MAXSCALE_LOG)
|
||||
|
@ -0,0 +1,48 @@
|
||||
select @@server_id; -- maxscale begin route to master:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale route to server server3:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale end:
|
||||
select @@server_id; -- maxscale named1 prepare route to master:
|
||||
select @@server_id; -- maxscale named1 begin:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale route to server server3:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale end:
|
||||
select @@server_id; -- maxscale shorthand1 begin route to server server2:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale route to server server3:3002
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale end:
|
||||
select @@server_id; # maxscale begin route to master:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; # maxscale route to server server3:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id; # maxscale end:
|
||||
select @@server_id; # maxscale named2 prepare route to master:
|
||||
select @@server_id; # maxscale named2 begin:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; # maxscale route to server server3:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id; # maxscale end:
|
||||
select @@server_id; # maxscale shorthand2 begin route to server server2:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; # maxscale route to server server3:3002
|
||||
select @@server_id;:3001
|
||||
select @@server_id; # maxscale end:
|
||||
select @@server_id/* maxscale begin route to master */;:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id/* maxscale route to server server3 */;:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id/* maxscale end */;:
|
||||
select @@server_id/* maxscale named3 prepare route to master */;:
|
||||
select @@server_id/* maxscale named3 begin */;:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id/* maxscale route to server server3 */;:3002
|
||||
select @@server_id;:3000
|
||||
select @@server_id/* maxscale end */;:
|
||||
select @@server_id/* maxscale shorthand3 begin route to server server2 */; :3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id/* maxscale route to server server3 */;:3002
|
||||
select @@server_id;:3001
|
||||
select @@server_id/* maxscale end */;:
|
@ -0,0 +1,39 @@
|
||||
select @@server_id; -- maxscalemaxscale route to master:
|
||||
select @@server_id; -- master to route maxscale:
|
||||
select @@server_id; -- route to master:
|
||||
select @@server_id; -- maxscale to master:
|
||||
select @@server_id; -- maxscale route master:
|
||||
select @@server_id; -- maxscale route to:
|
||||
select @@server_id; -- maxscale begin master:
|
||||
select @@server_id; -- maxscale master route to master:
|
||||
select @@server_id; -- maxscale route to maxscale route to master:
|
||||
select @@server_id; -- maxscale maxscale route to master:
|
||||
select @@server_id; -- maxscale route to to server =):
|
||||
select @@server_id; -- maxscale route to maxscale server server1:
|
||||
select @@server_id; -- maxscale route to server1:
|
||||
select @@server_id; # maxscalemaxscale route to master:
|
||||
select @@server_id; # master to route maxscale:
|
||||
select @@server_id; # route to master:
|
||||
select @@server_id; # maxscale to master:
|
||||
select @@server_id; # maxscale route master:
|
||||
select @@server_id; # maxscale route to:
|
||||
select @@server_id; # maxscale begin master:
|
||||
select @@server_id; # maxscale master route to master:
|
||||
select @@server_id; # maxscale route to maxscale route to master:
|
||||
select @@server_id; # maxscale maxscale route to master:
|
||||
select @@server_id; # maxscale route to to server =):
|
||||
select @@server_id; # maxscale route to maxscale server server1:
|
||||
select @@server_id; # maxscale route to server1:
|
||||
select @@server_id; /* maxscalemaxscale route to master */;:
|
||||
select @@server_id; /* master to route maxscale */;:
|
||||
select @@server_id; /* route to master */;:
|
||||
select @@server_id; /* maxscale to master */;:
|
||||
select @@server_id; /* maxscale route master */;:
|
||||
select @@server_id; /* maxscale route to */;:
|
||||
select @@server_id; /* maxscale begin master */;:
|
||||
select @@server_id; /* maxscale master route to master */;:
|
||||
select @@server_id; /* maxscale route to maxscale route to master */;:
|
||||
select @@server_id; /* maxscale maxscale route to master */;:
|
||||
select @@server_id; /* maxscale route to to server =) */;:
|
||||
select @@server_id; /* maxscale route to maxscale server server1 */;:
|
||||
select @@server_id; /* maxscale route to server1 */;:
|
@ -1,11 +1,12 @@
|
||||
#!/bin/bash
|
||||
NARGS=6
|
||||
NARGS=7
|
||||
TLOG=$1
|
||||
THOST=$2
|
||||
TPORT=$3
|
||||
TMASTER_ID=$4
|
||||
TUSER=$5
|
||||
TPWD=$6
|
||||
TESTINPUT=$7
|
||||
|
||||
if [ $# != $NARGS ] ;
|
||||
then
|
||||
@ -13,24 +14,52 @@ echo""
|
||||
echo "Wrong number of arguments, gave "$#" but "$NARGS" is required"
|
||||
echo ""
|
||||
echo "Usage :"
|
||||
echo " rwsplit.sh <log filename> <host> <port> <master id> <user> <password>"
|
||||
echo " rwsplit_hints.sh <log filename> <host> <port> <master id> <user> <password> <test file>"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TESTINPUT=hints.txt
|
||||
QUERY="select @@server_id;"
|
||||
RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ --silent\
|
||||
|
||||
RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ --silent\ --comment
|
||||
i=0
|
||||
|
||||
while read -r LINE
|
||||
do
|
||||
TINPUT=`echo "$LINE"|awk '{split($0,a,":");print a[1]}'`
|
||||
TRETVAL=`echo "$LINE"|awk '{split($0,a,":");print a[2]}'`
|
||||
a=`$RUNCMD -e"$QUERY$TINPUT"`
|
||||
if [ "$a" != "$TRETVAL" ]; then
|
||||
echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG;
|
||||
else
|
||||
echo "$TINPUT PASSED">>$TLOG ;
|
||||
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))
|
||||
done < $TESTINPUT
|
||||
|
||||
`$RUNCMD < $TESTINPUT.sql > $TESTINPUT.output`
|
||||
|
||||
x=0
|
||||
crash=1
|
||||
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
|
||||
|
||||
if [ $crash -eq 1 ]
|
||||
then
|
||||
all_passed=0
|
||||
for ((v=0;v<$i;v++))
|
||||
do
|
||||
echo "${TINPUT[v]} FAILED, nothing was returned">>$TLOG;
|
||||
done
|
||||
fi
|
||||
|
||||
done < $TESTINPUT
|
||||
if [ $all_passed -eq 1 ]
|
||||
then
|
||||
echo "Test set: PASSED">>$TLOG;
|
||||
else
|
||||
echo "Test set: FAILED">>$TLOG;
|
||||
fi
|
||||
|
@ -0,0 +1,18 @@
|
||||
select @@server_id; -- maxscale route to master:3000
|
||||
select @@server_id; -- maxscale route to slave:
|
||||
select @@server_id; -- maxscale route to server server1:3000
|
||||
select @@server_id; -- maxscale route to server server2:3001
|
||||
select @@server_id; -- maxscale route to server server3:3002
|
||||
select @@server_id; -- maxscale route to server server4:3003
|
||||
select @@server_id; # maxscale route to master:3000
|
||||
select @@server_id; # maxscale route to slave:
|
||||
select @@server_id; # maxscale route to server server1:3000
|
||||
select @@server_id; # maxscale route to server server2:3001
|
||||
select @@server_id; # maxscale route to server server3:3002
|
||||
select @@server_id; # maxscale route to server server4:3003
|
||||
select @@server_id/* maxscale route to master */;:3000
|
||||
select @@server_id/* maxscale route to slave */;:
|
||||
select @@server_id/* maxscale route to server server1 */;:3000
|
||||
select @@server_id/* maxscale route to server server2 */;:3001
|
||||
select @@server_id/* maxscale route to server server3 */;:3002
|
||||
select @@server_id/* maxscale route to server server4 */;:3003
|
@ -0,0 +1,50 @@
|
||||
select @@server_id; -- maxscale stack_named1 prepare route to server server1:
|
||||
select @@server_id; -- maxscale stack_named2 prepare route to server server2:
|
||||
select @@server_id; -- maxscale stack_named3 prepare route to server server3:
|
||||
select @@server_id; -- maxscale stack_named4 prepare route to server server4:
|
||||
select @@server_id; -- maxscale stack_named1 begin:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale stack_named2 begin:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale stack_named3 begin:3002
|
||||
select @@server_id;:3002
|
||||
select @@server_id; -- maxscale stack_named4 begin:3003
|
||||
select @@server_id;:3003
|
||||
select @@server_id; -- maxscale stack_shorthand1 begin route to server server1:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale stack_shorthand2 begin route to server server2:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale stack_shorthand3 begin route to server server3:3002
|
||||
select @@server_id;:3002
|
||||
select @@server_id; -- maxscale stack_shorthand4 begin route to server server4:3003
|
||||
select @@server_id;:3003
|
||||
select @@server_id; -- maxscale end:3002
|
||||
select @@server_id;:3002
|
||||
select @@server_id; -- maxscale end:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale end:3000
|
||||
select @@server_id;:3000
|
||||
select @@server_id; -- maxscale end:3003
|
||||
select @@server_id;:3003
|
||||
select @@server_id; -- maxscale end:3002
|
||||
select @@server_id;:3002
|
||||
select @@server_id; -- maxscale end:3001
|
||||
select @@server_id;:3001
|
||||
select @@server_id; -- maxscale end:3000
|
||||
select @@server_id; -- maxscale end:
|
||||
select @@server_id; -- maxscale stack_shorthand1 begin:3000
|
||||
select @@server_id; -- maxscale stack_shorthand2 begin:3001
|
||||
select @@server_id; -- maxscale stack_shorthand3 begin:3002
|
||||
select @@server_id; -- maxscale stack_shorthand4 begin:3003
|
||||
select @@server_id; -- maxscale stack_named1 begin:3000
|
||||
select @@server_id; -- maxscale stack_named2 begin:3001
|
||||
select @@server_id; -- maxscale stack_named3 begin:3002
|
||||
select @@server_id; -- maxscale stack_named4 begin:3003
|
||||
select @@server_id; -- maxscale end:3002
|
||||
select @@server_id; -- maxscale end:3001
|
||||
select @@server_id; -- maxscale end:3000
|
||||
select @@server_id; -- maxscale end:3003
|
||||
select @@server_id; -- maxscale end:3002
|
||||
select @@server_id; -- maxscale end:3001
|
||||
select @@server_id; -- maxscale end:3000
|
||||
select @@server_id; -- maxscale end:
|
33
server/modules/routing/readwritesplit/test/test_hints/syntax_check.sh
Executable file
33
server/modules/routing/readwritesplit/test/test_hints/syntax_check.sh
Executable file
@ -0,0 +1,33 @@
|
||||
#! /bin/bash
|
||||
NARGS=7
|
||||
TLOG=$1
|
||||
THOST=$2
|
||||
TPORT=$3
|
||||
TMASTER_ID=$4
|
||||
TUSER=$5
|
||||
TPWD=$6
|
||||
TESTINPUT=$7
|
||||
|
||||
if [ $# != $NARGS ] ;
|
||||
then
|
||||
echo""
|
||||
echo "Wrong number of arguments, gave "$#" but "$NARGS" is required"
|
||||
echo ""
|
||||
echo "Usage :"
|
||||
echo " syntax_check.sh <log filename> <host> <port> <master id> <user> <password> <test file>"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
./rwsplit_hints.sh dummy.log $THOST $TPORT $TMASTER_ID $TUSER $TPWD $TESTINPUT
|
||||
|
||||
exp_count=`cat error_tests | grep -c '.*'`
|
||||
err_count=`tail -n $exp_count ../../../../../test/log/skygw_err*|grep -c 'Hint ignored'`
|
||||
|
||||
if [ "$err_count" == "$exp_count" ]
|
||||
then
|
||||
echo "Test set: PASSED">>$TLOG;
|
||||
else
|
||||
echo "Expected $exp_count ignored hints in the error log but found $err_count instead">>$TLOG
|
||||
echo "Test set: FAILED">>$TLOG;
|
||||
fi
|
Reference in New Issue
Block a user