mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug#17280 mysqltest, --echo sometimes does not expand $variables
- Evaluate all variables in the text before printing it to result file client/mysqltest.c: Update echo command to vvaluate all variables in the string before printing, allow for variable names to be escaped using \ mysql-test/r/mysqltest.result: Update results for echo mysql-test/t/mysqltest.test: Add more advanced tests for echo of strings with several variables and/or text plus variables. Also test that variables can be escaped
This commit is contained in:
@ -201,8 +201,14 @@ source database
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database
|
||||
'$message'
|
||||
"$message"
|
||||
'# MySQL: The
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database'
|
||||
"# MySQL: The
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database"
|
||||
hej
|
||||
hej
|
||||
hej
|
||||
@ -222,6 +228,15 @@ mysqltest: At line 1: Missing arguments to let
|
||||
mysqltest: At line 1: Missing variable name in let
|
||||
mysqltest: At line 1: Variable name in =hi does not start with '$'
|
||||
mysqltest: At line 1: Missing assignment operator in let
|
||||
# Execute: --echo # <whatever> success: $success
|
||||
# <whatever> success: 1
|
||||
# Execute: echo # <whatever> success: $success ;
|
||||
# <whatever> success: 1
|
||||
# The next two variants work fine and expand the content of $success
|
||||
# Execute: --echo $success
|
||||
1
|
||||
# Execute: echo $success ;
|
||||
1
|
||||
mysqltest: At line 1: Missing file name in source
|
||||
mysqltest: At line 1: Could not open file ./non_existingFile
|
||||
mysqltest: In included file "./var/tmp/recursive.sql": At line 1: Source directives are nesting too deep
|
||||
|
@ -539,6 +539,19 @@ echo $novar1;
|
||||
--error 1
|
||||
--exec echo "let hi;" | $MYSQL_TEST 2>&1
|
||||
|
||||
# More advanced test for bug#17280
|
||||
let $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 query
|
||||
# let $<var_name>=`<query>`;
|
||||
|
Reference in New Issue
Block a user