mirror of
https://github.com/MariaDB/server.git
synced 2025-05-28 13:01:41 +03:00
Bug#20037 mysqltest requires cygwin on windows(part 1, new mysqltest commands)
- Update comments - Make "write_file" fail if file already exist - Remove temporary files created by test cases client/mysqltest.c: Improve function comments Make write_file fail if file already exist mysql-test/r/mysqltest.result: Update test result after adding new test and updating description of argumements to chmod mysql-test/t/bootstrap.test: Remove temporary file created by testcase mysql-test/t/mysql.test: Remove temporary file created by testcase mysql-test/t/mysqladmin.test: Remove temporary file created by testcase mysql-test/t/mysqltest.test: Remove temporary file created by testcase Add test to show that "write_file" fails if file already exist mysql-test/t/sp-destruct.test: Remove temporary file created by testcase
This commit is contained in:
parent
841ae6731f
commit
04e8c93c20
@ -2525,8 +2525,8 @@ void do_copy_file(struct st_command *command)
|
|||||||
command command handle
|
command command handle
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
chmod <octal> <file>
|
chmod_file <octal> <file_name>
|
||||||
Change file permission of <file>
|
Change file permission of <file_name>
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -2536,8 +2536,8 @@ void do_chmod_file(struct st_command *command)
|
|||||||
static DYNAMIC_STRING ds_mode;
|
static DYNAMIC_STRING ds_mode;
|
||||||
static DYNAMIC_STRING ds_file;
|
static DYNAMIC_STRING ds_file;
|
||||||
const struct command_arg chmod_file_args[] = {
|
const struct command_arg chmod_file_args[] = {
|
||||||
"mode", ARG_STRING, TRUE, &ds_mode, "Mode of file",
|
"mode", ARG_STRING, TRUE, &ds_mode, "Mode of file(octal) ex. 0660",
|
||||||
"file", ARG_STRING, TRUE, &ds_file, "Filename of file to modify"
|
"filename", ARG_STRING, TRUE, &ds_file, "Filename of file to modify"
|
||||||
};
|
};
|
||||||
DBUG_ENTER("do_chmod_file");
|
DBUG_ENTER("do_chmod_file");
|
||||||
|
|
||||||
@ -2671,6 +2671,12 @@ void do_write_file_command(struct st_command *command, my_bool append)
|
|||||||
if (ds_delimiter.length == 0)
|
if (ds_delimiter.length == 0)
|
||||||
dynstr_set(&ds_delimiter, "EOF");
|
dynstr_set(&ds_delimiter, "EOF");
|
||||||
|
|
||||||
|
if (!append && access(ds_filename.str, F_OK) == 0)
|
||||||
|
{
|
||||||
|
/* The file should not be overwritten */
|
||||||
|
die("File already exist: '%s'", ds_filename.str);
|
||||||
|
}
|
||||||
|
|
||||||
init_dynamic_string(&ds_content, "", 1024, 1024);
|
init_dynamic_string(&ds_content, "", 1024, 1024);
|
||||||
read_until_delimiter(&ds_content, &ds_delimiter);
|
read_until_delimiter(&ds_content, &ds_delimiter);
|
||||||
DBUG_PRINT("info", ("Writing to file: %s", ds_filename.str));
|
DBUG_PRINT("info", ("Writing to file: %s", ds_filename.str));
|
||||||
@ -2703,7 +2709,7 @@ void do_write_file_command(struct st_command *command, my_bool append)
|
|||||||
Write everything between the "write_file" command and 'delimiter'
|
Write everything between the "write_file" command and 'delimiter'
|
||||||
to "file_name"
|
to "file_name"
|
||||||
|
|
||||||
NOTE! Overwrites existing file
|
NOTE! Will fail if <file_name> exists
|
||||||
|
|
||||||
Default <delimiter> is EOF
|
Default <delimiter> is EOF
|
||||||
|
|
||||||
|
@ -521,6 +521,7 @@ drop table t1;
|
|||||||
mysqltest: At line 1: Missing required argument 'filename' to command 'remove_file'
|
mysqltest: At line 1: Missing required argument 'filename' to command 'remove_file'
|
||||||
mysqltest: At line 1: Missing required argument 'filename' to command 'write_file'
|
mysqltest: At line 1: Missing required argument 'filename' to command 'write_file'
|
||||||
mysqltest: At line 1: End of file encountered before 'EOF' delimiter was found
|
mysqltest: At line 1: End of file encountered before 'EOF' delimiter was found
|
||||||
|
mysqltest: At line 1: File already exist: 'MYSQLTEST_VARDIR/tmp/test_file1.tmp'
|
||||||
Some data
|
Some data
|
||||||
for cat_file command
|
for cat_file command
|
||||||
of mysqltest
|
of mysqltest
|
||||||
@ -531,7 +532,7 @@ mysqltest: At line 1: Missing required argument 'to_file' to command 'copy_file'
|
|||||||
mysqltest: At line 1: Missing required argument 'mode' to command 'chmod'
|
mysqltest: At line 1: Missing required argument 'mode' to command 'chmod'
|
||||||
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
||||||
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
||||||
mysqltest: At line 1: Missing required argument 'file' to command 'chmod'
|
mysqltest: At line 1: Missing required argument 'filename' to command 'chmod'
|
||||||
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
||||||
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
mysqltest: At line 1: You must write a 4 digit octal number for mode
|
||||||
hello
|
hello
|
||||||
|
@ -9,12 +9,13 @@ drop table if exists t1;
|
|||||||
#
|
#
|
||||||
# Check that --bootstrap reads from stdin
|
# Check that --bootstrap reads from stdin
|
||||||
#
|
#
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/bootstrap.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql
|
||||||
use test;
|
use test;
|
||||||
CREATE TABLE t1(a int);
|
CREATE TABLE t1(a int);
|
||||||
EOF
|
EOF
|
||||||
--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/bootstrap.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1
|
--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Check that --bootstrap of file with SQL error returns error
|
# Check that --bootstrap of file with SQL error returns error
|
||||||
@ -28,6 +29,7 @@ EOF
|
|||||||
# Table t1 should not exists
|
# Table t1 should not exists
|
||||||
--error 1051
|
--error 1051
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_error.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Bootstrap with a query larger than 2*thd->net.max_packet
|
# Bootstrap with a query larger than 2*thd->net.max_packet
|
||||||
@ -40,6 +42,7 @@ eval select * into outfile '$MYSQLTEST_VARDIR/tmp/long_query.sql' from t1;
|
|||||||
--enable_query_log
|
--enable_query_log
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/long_query.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1
|
--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/long_query.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/long_query.sql;
|
||||||
|
|
||||||
set global max_allowed_packet=@my_max_allowed_packet;
|
set global max_allowed_packet=@my_max_allowed_packet;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
@ -241,18 +241,21 @@ DELIMITER /
|
|||||||
SELECT 1/
|
SELECT 1/
|
||||||
EOF
|
EOF
|
||||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||||
|
|
||||||
# This should give an error...
|
# This should give an error...
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
||||||
DELIMITER \
|
DELIMITER \
|
||||||
EOF
|
EOF
|
||||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||||
|
|
||||||
# As should this...
|
# As should this...
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
||||||
DELIMITER \\
|
DELIMITER \\
|
||||||
EOF
|
EOF
|
||||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Some coverage of not normally used parts
|
# Some coverage of not normally used parts
|
||||||
|
@ -20,7 +20,7 @@ EOF
|
|||||||
--replace_regex /.*mysqladmin.*: unknown/mysqladmin: unknown/
|
--replace_regex /.*mysqladmin.*: unknown/mysqladmin: unknown/
|
||||||
--error 7
|
--error 7
|
||||||
--exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
|
--exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf;
|
||||||
|
|
||||||
# When mysqladmin finds "loose-database" in .cnf file it shall print
|
# When mysqladmin finds "loose-database" in .cnf file it shall print
|
||||||
# a warning and continue
|
# a warning and continue
|
||||||
@ -32,3 +32,4 @@ EOF
|
|||||||
--replace_regex /Warning: .*mysqladmin.*: unknown/Warning: mysqladmin: unknown/
|
--replace_regex /Warning: .*mysqladmin.*: unknown/Warning: mysqladmin: unknown/
|
||||||
--exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
|
--exec $MYSQLADMIN --defaults-file=$MYSQLTEST_VARDIR/tmp/bug10608.cnf -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= ping 2>&1
|
||||||
|
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf;
|
||||||
|
@ -366,6 +366,7 @@ show status;
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Missing delimiter until eof
|
# Missing delimiter until eof
|
||||||
@ -377,6 +378,7 @@ sleep 7
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Missing delimiter until "disable_query_log"
|
# Missing delimiter until "disable_query_log"
|
||||||
@ -391,6 +393,7 @@ disable_query_log;
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Missing delimiter until "disable_query_log"
|
# Missing delimiter until "disable_query_log"
|
||||||
@ -406,6 +409,7 @@ disable_query_log;
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Missing delimiter until eof
|
# Missing delimiter until eof
|
||||||
@ -422,6 +426,7 @@ disconnect default
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Missing delimiter until eof
|
# Missing delimiter until eof
|
||||||
@ -1160,6 +1165,7 @@ echo hej;
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||||
while (0)
|
while (0)
|
||||||
@ -1167,6 +1173,7 @@ while (0)
|
|||||||
EOF
|
EOF
|
||||||
--error 1
|
--error 1
|
||||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||||
while (0){
|
while (0){
|
||||||
@ -1268,6 +1275,7 @@ while ($i)
|
|||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql; echo OK;" | $MYSQL_TEST 2>&1
|
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql; echo OK;" | $MYSQL_TEST 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
# Repeat connect/disconnect
|
# Repeat connect/disconnect
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||||
@ -1282,6 +1290,7 @@ EOF
|
|||||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||||
--error 1
|
--error 1
|
||||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
# Select disconnected connection
|
# Select disconnected connection
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||||
@ -1292,6 +1301,7 @@ EOF
|
|||||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||||
--error 1
|
--error 1
|
||||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||||
|
|
||||||
# Connection name already used
|
# Connection name already used
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||||
@ -1568,6 +1578,12 @@ write_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp END_DELIMITER;
|
|||||||
Content for test_file1 contains EOF
|
Content for test_file1 contains EOF
|
||||||
END_DELIMITER
|
END_DELIMITER
|
||||||
file_exists $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
file_exists $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||||
|
|
||||||
|
# write to already exisiting file
|
||||||
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||||
|
--error 1
|
||||||
|
--exec echo "write_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;" | $MYSQL_TEST 2>&1
|
||||||
|
|
||||||
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
@ -1589,6 +1605,8 @@ append_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
|||||||
Appended text on nonexisting file
|
Appended text on nonexisting file
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
# test for cat_file
|
# test for cat_file
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
@ -1599,6 +1617,7 @@ for cat_file command
|
|||||||
of mysqltest
|
of mysqltest
|
||||||
EOF
|
EOF
|
||||||
cat_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
cat_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||||
|
|
||||||
--error 1
|
--error 1
|
||||||
--exec echo "cat_file non_existing_file;" | $MYSQL_TEST 2>&1
|
--exec echo "cat_file non_existing_file;" | $MYSQL_TEST 2>&1
|
||||||
@ -1719,6 +1738,7 @@ chmod 0000 $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
|||||||
#EOF
|
#EOF
|
||||||
|
|
||||||
chmod 0777 $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
chmod 0777 $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
||||||
|
remove_file $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
||||||
--write_file $MYSQLTEST_VARDIR/tmp/file1.tmp
|
--write_file $MYSQLTEST_VARDIR/tmp/file1.tmp
|
||||||
test2
|
test2
|
||||||
EOF
|
EOF
|
||||||
|
@ -42,6 +42,7 @@ insert into t1 values (0);
|
|||||||
flush table mysql.proc;
|
flush table mysql.proc;
|
||||||
|
|
||||||
# Thrashing the .frm file
|
# Thrashing the .frm file
|
||||||
|
--remove_file $MYSQLTEST_VARDIR/master-data/mysql/proc.frm
|
||||||
--write_file $MYSQLTEST_VARDIR/master-data/mysql/proc.frm
|
--write_file $MYSQLTEST_VARDIR/master-data/mysql/proc.frm
|
||||||
saljdfa
|
saljdfa
|
||||||
EOF
|
EOF
|
||||||
|
Loading…
x
Reference in New Issue
Block a user