mysqltest.test
来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· TEST 代码 · 共 2,085 行 · 第 1/4 页
TEST
2,085 行
# ----------------------------------------------------------------------------echo MySQL;echo "MySQL";echo MySQL: The world''s most popular open source database;echo "MySQL: The world's most popular open source database";echo MySQL: The world''s most popular open source database;echo # MySQL: The world''s# most popular open# source database;echo - MySQL: The world''s- most popular open- source database;echo - MySQL: The world''s-- most popular-- open source database;echo # MySQL: The--world''s# most popular-- open- source database;echo "MySQL: The world's most popular; open source database";echo "MySQL: The world's most popular ; open source database";echo "MySQL: The world's most popular ;open source database";echo echo message echo message;echo ;# Illegal use of echo#--error 1#--exec echo "echo \$;" | $MYSQL_TEST 2>&1# ----------------------------------------------------------------------------# Test exec command# ----------------------------------------------------------------------------# Illegal use of exec--error 1--exec echo "--exec false" | $MYSQL_TEST 2>&1--error 1--exec echo "--exec " | $MYSQL_TEST 2>&1# ----------------------------------------------------------------------------# Test let command# ----------------------------------------------------------------------------let $message=MySQL;echo $message;let $message="MySQL";echo $message;let $message= MySQL: The world''s most popular open source database;echo $message;let $message= # MySQL: The# world''s most# popular open# source database;echo $message;let $message= -- MySQL: The-- world''s most-- popular-- open source database;echo $message;let $message= # MySQL: The- world''s most-- popular open# source database;echo $message;echo '$message';echo "$message";let $1=hej;echo $1;let $1 =hej ;echo $1;let $1 = hej;echo $1;let $1=1;let $2=$1;echo $2;let $5=$6;echo $5;echo $6;let $where=a long variable content;echo $where;let $where2= $where;echo $where2;let $where3=a long $where variable content;echo $where3;let $where3=a long \\\$where variable content;echo $where3;let $novar1= $novar2;echo $novar1;let $cat=na;let $cat=ba$cat$cat;echo banana = $cat;# ba\$cat\$cat should have been sufficient.# ba\\\$cat\\\$cat -> ba\$cat\$cat -> ba$cat$cat -> banana# Magnus' upcoming patch will fix the missing second interpretation.let $cat=ba\\\$cat\\\$cat;echo Not a banana: $cat;# Test illegal uses of let--error 1--exec echo "let ;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$=hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$1 hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$m hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$ hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let =hi;" | $MYSQL_TEST 2>&1--error 1--exec echo "let hi;" | $MYSQL_TEST 2>&1# More advanced test for bug#17280let $success= 1;--echo # Execute: --echo # <whatever> success: \$success--echo # <whatever> success: $success--echo # Execute: echo # <whatever> success: \$success ;echo # <whatever> success: $success ;--echo # The next two variants work fine and expand the content of \$success--echo # Execute: --echo \$success--echo $success--echo # Execute: echo \$success ;echo $success ;# ----------------------------------------------------------------------------# Test to assign let from variable# let $<var_name>=$<var_name>;# ------------------------------------------------------------------------------echo # Check if let \$B = \$A is an assignment per value.# Basic preparations:--echo let \$A = initial value of A;let $A = initial value of A;# --echo # Content of \$A is: $A--echo let \$B = initial value of B;let $B = initial value of B;# --echo # Content of \$B is: $B# Assign $B to $A:--echo let \$B = \$Alet $A = $B;--echo # Content of \$A is: $A# Changes of $B must NOT affect $A and Changes of $A must NOT affect $B !--echo let \$A = changed value of A;let $A = changed value of A;--echo # Content of \$B is: $B--echo let \$B = changed value of B;let $B = changed value of B;--echo # Content of \$A is: $A# ----------------------------------------------------------------------------# Test let from query with $variable# let $<var_name>=`<query with $variable>`;# ----------------------------------------------------------------------------let $var1=content of variable 1;let $var2= `select "$var1"`;let $var3= `select concat("$var1", " ", "$var2")`;echo var2: $var2;echo var3: $var3;if (`select length("$var3") > 0`){ echo length of var3 is longer than 0;}# ----------------------------------------------------------------------------# Test to assign let from query# let $<var_name>=`<query>`;# ----------------------------------------------------------------------------echo var1;let $var1= `select "hi" as "Col", 1 as "Column1", "hi there" as Col3`;echo $var1;echo var2;let $var2= `select 2 as "Column num 2"`;echo $var2;echo var2 again;let $var2= `select 2 as "Column num 2"`;echo $var2;echo var3 two columns with same name;let $var3= `select 1 as "Col", 2 as "Col", 3 as "var3"`;echo $var3;echo var4 from query that returns NULL;let $var4= `select NULL`;echo var5 from query that returns no row;let $var5= `SHOW VARIABLES LIKE "nonexisting_variable"`;echo failing query in let;--write_file $MYSQLTEST_VARDIR/tmp/let.sqllet $var2= `failing query`;echo $var2;EOF--error 1--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/let.sql 2>&1remove_file $MYSQLTEST_VARDIR/tmp/let.sql;# ----------------------------------------------------------------------------# Test source command# ----------------------------------------------------------------------------# Test illegal uses of source--error 1--exec echo "source ;" | $MYSQL_TEST 2>&1# Fix win paths--replace_result \\ /# Source a nonexisting file--error 1--exec echo "source non_existingFile;" | $MYSQL_TEST 2>&1# Too many source--exec echo "source $MYSQLTEST_VARDIR/tmp/recursive.sql;" > $MYSQLTEST_VARDIR/tmp/recursive.sql--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR--error 1--exec echo "source $MYSQLTEST_VARDIR/tmp/recursive.sql;" | $MYSQL_TEST 2>&1remove_file $MYSQLTEST_VARDIR/tmp/recursive.sql;# Source a file with error--exec echo "garbage ;" > $MYSQLTEST_VARDIR/tmp/error.sql--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR--error 1--exec echo "source $MYSQLTEST_VARDIR/tmp/error.sql;" | $MYSQL_TEST 2>&1remove_file $MYSQLTEST_VARDIR/tmp/error.sql;# Test execution of source in a while loop--write_file $MYSQLTEST_VARDIR/tmp/sourced.incecho here is the sourced script;EOF--disable_query_loglet $outer= 2; # Number of outer loopswhile ($outer){ eval SELECT '$outer = outer loop variable after while' AS ""; --source $MYSQLTEST_VARDIR/tmp/sourced.inc eval SELECT '$outer = outer loop variable before dec' AS ""; dec $outer; eval SELECT '$outer = outer loop variable after dec' AS "";}let $outer= 2; # Number of outer loopswhile ($outer){ eval SELECT '$outer = outer loop variable after while' AS ""; echo here is the sourced script; eval SELECT '$outer = outer loop variable before dec' AS ""; dec $outer; eval SELECT '$outer = outer loop variable after dec' AS "";}# Test execution of source in a while loop--disable_abort_on_error# Sourcing of a file within while loop, sourced file will# source other filelet $num= 9;while ($num){ SELECT 'In loop' AS ""; --source $MYSQLTEST_VARDIR/tmp/sourced.inc dec $num;}--enable_abort_on_error--enable_query_log# Test source $variable/<filename>--source $MYSQLTEST_VARDIR/tmp/sourced.inc--remove_file $MYSQLTEST_VARDIR/tmp/sourced.inc--write_file $MYSQLTEST_VARDIR/tmp/sourced.incecho "hello";EOFlet $x= sourced;source $MYSQLTEST_VARDIR/tmp/$x.inc;let $x= $MYSQLTEST_VARDIR;source $x/tmp/sourced.inc;--remove_file $MYSQLTEST_VARDIR/tmp/sourced.inc# ----------------------------------------------------------------------------# Test sleep command# ----------------------------------------------------------------------------sleep 0.5;sleep 1;real_sleep 1;# Missing parameter--error 1--exec echo "sleep ;" | $MYSQL_TEST 2>&1--error 1--exec echo "real_sleep ;" | $MYSQL_TEST 2>&1# Illegal parameter--error 1--exec echo "sleep abc;" | $MYSQL_TEST 2>&1--error 1--exec echo "real_sleep abc;" | $MYSQL_TEST 2>&1# ----------------------------------------------------------------------------# Test inc# ----------------------------------------------------------------------------inc $i;echo $i;inc $i;echo $i;let $i=100;inc $i;echo $i;let $i=hej;echo $i;inc $i;echo $i;--error 1--exec echo "inc;" | $MYSQL_TEST 2>&1--error 1--exec echo "inc i;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$i=100; inc \$i 1000; echo \$i;" | $MYSQL_TEST 2>&1inc $i; inc $i; inc $i; --echo $iecho $i;# ----------------------------------------------------------------------------# Test dec# ----------------------------------------------------------------------------dec $d;echo $d;dec $d;echo $d;let $d=100;dec $d;echo $d;let $d=hej;echo $d;dec $d;echo $d;--error 1--exec echo "dec;" | $MYSQL_TEST 2>&1--error 1--exec echo "dec i;" | $MYSQL_TEST 2>&1--error 1--exec echo "let \$i=100; dec \$i 1000; echo \$i;" | $MYSQL_TEST 2>&1# ----------------------------------------------------------------------------# Test system# ----------------------------------------------------------------------------#system ls > /dev/null;system echo "hej" > /dev/null;#--system ls > /dev/null--system echo "hej" > /dev/null;--error 1--exec echo "system;" | $MYSQL_TEST 2>&1--error 1--exec echo "system $NONEXISTSINFVAREABLI;" | $MYSQL_TEST 2>&1--error 1--exec echo "system false;" | $MYSQL_TEST 2>&1--disable_abort_on_errorsystem NonExistsinfComamdn 2> /dev/null;--enable_abort_on_error# ----------------------------------------------------------------------------# Test delimiter# ----------------------------------------------------------------------------delimiter stop;echo teststopdelimiter ;stopecho test2;--delimiter stopecho test3stop--delimiter ;echo test4;# ----------------------------------------------------------------------------# Test if# ----------------------------------------------------------------------------let $counter=10;if ($counter){ echo Counter is greater than 0, (counter=10);}if (!$counter){ echo Counter is not 0, (counter=10);}let $counter=0;if($counter){ echo Counter is greater than 0, (counter=0);}if (!$counter){ echo Counter is not 0, (counter=0);}# ----------------------------------------------------------------------------# Test while, { and }# ----------------------------------------------------------------------------let $i=1;while ($i){ echo $i; dec $i;}# One liner#let $i=1;while ($i){echo $i;dec $i;}let $i=0;while (!$i){ echo Testing while with not; inc $i;}# Exceed max nesting level--write_file $MYSQLTEST_VARDIR/tmp/mysqltest_while.inclet $1 = 10;while ($1){while ($1){while ($1){ while ($1){ while ($1){ while ($1){ while ($1){ while ($1){ while ($1){ while ($1){ while ($1){ while ($1)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?