mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01: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
This commit is contained in:
parent
fecdca6754
commit
f785bf00de
7 changed files with 44 additions and 9 deletions
|
@ -2525,8 +2525,8 @@ void do_copy_file(struct st_command *command)
|
|||
command command handle
|
||||
|
||||
DESCRIPTION
|
||||
chmod <octal> <file>
|
||||
Change file permission of <file>
|
||||
chmod_file <octal> <file_name>
|
||||
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_file;
|
||||
const struct command_arg chmod_file_args[] = {
|
||||
"mode", ARG_STRING, TRUE, &ds_mode, "Mode of file",
|
||||
"file", ARG_STRING, TRUE, &ds_file, "Filename of file to modify"
|
||||
"mode", ARG_STRING, TRUE, &ds_mode, "Mode of file(octal) ex. 0660",
|
||||
"filename", ARG_STRING, TRUE, &ds_file, "Filename of file to modify"
|
||||
};
|
||||
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)
|
||||
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);
|
||||
read_until_delimiter(&ds_content, &ds_delimiter);
|
||||
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'
|
||||
to "file_name"
|
||||
|
||||
NOTE! Overwrites existing file
|
||||
NOTE! Will fail if <file_name> exists
|
||||
|
||||
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 'write_file'
|
||||
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
|
||||
for cat_file command
|
||||
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: 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
|
||||
hello
|
||||
|
|
|
@ -9,12 +9,13 @@ drop table if exists t1;
|
|||
#
|
||||
# Check that --bootstrap reads from stdin
|
||||
#
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/bootstrap.sql
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql
|
||||
use test;
|
||||
CREATE TABLE t1(a int);
|
||||
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;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql;
|
||||
|
||||
#
|
||||
# Check that --bootstrap of file with SQL error returns error
|
||||
|
@ -28,6 +29,7 @@ EOF
|
|||
# Table t1 should not exists
|
||||
--error 1051
|
||||
drop table t1;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_error.sql;
|
||||
|
||||
#
|
||||
# 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
|
||||
--error 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;
|
||||
drop table t1;
|
||||
|
|
|
@ -241,18 +241,21 @@ DELIMITER /
|
|||
SELECT 1/
|
||||
EOF
|
||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||
|
||||
# This should give an error...
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
||||
DELIMITER \
|
||||
EOF
|
||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||
|
||||
# As should this...
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
|
||||
DELIMITER \\
|
||||
EOF
|
||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bug21412.sql;
|
||||
|
||||
#
|
||||
# Some coverage of not normally used parts
|
||||
|
|
|
@ -20,7 +20,7 @@ EOF
|
|||
--replace_regex /.*mysqladmin.*: unknown/mysqladmin: unknown/
|
||||
--error 7
|
||||
--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
|
||||
# a warning and continue
|
||||
|
@ -32,3 +32,4 @@ EOF
|
|||
--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
|
||||
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bug10608.cnf;
|
||||
|
|
|
@ -366,6 +366,7 @@ show status;
|
|||
EOF
|
||||
--error 1
|
||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
#
|
||||
# Missing delimiter until eof
|
||||
|
@ -377,6 +378,7 @@ sleep 7
|
|||
EOF
|
||||
--error 1
|
||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
#
|
||||
# Missing delimiter until "disable_query_log"
|
||||
|
@ -391,6 +393,7 @@ disable_query_log;
|
|||
EOF
|
||||
--error 1
|
||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
#
|
||||
# Missing delimiter until "disable_query_log"
|
||||
|
@ -406,6 +409,7 @@ disable_query_log;
|
|||
EOF
|
||||
--error 1
|
||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
#
|
||||
# Missing delimiter until eof
|
||||
|
@ -422,6 +426,7 @@ disconnect default
|
|||
EOF
|
||||
--error 1
|
||||
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
#
|
||||
# Missing delimiter until eof
|
||||
|
@ -1160,6 +1165,7 @@ echo hej;
|
|||
EOF
|
||||
--error 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
|
||||
while (0)
|
||||
|
@ -1167,6 +1173,7 @@ while (0)
|
|||
EOF
|
||||
--error 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
|
||||
while (0){
|
||||
|
@ -1268,6 +1275,7 @@ while ($i)
|
|||
}
|
||||
EOF
|
||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql; echo OK;" | $MYSQL_TEST 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
# Repeat connect/disconnect
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||
|
@ -1282,6 +1290,7 @@ EOF
|
|||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||
--error 1
|
||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
# Select disconnected connection
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
|
||||
|
@ -1292,6 +1301,7 @@ EOF
|
|||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||
--error 1
|
||||
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
|
||||
|
||||
# Connection name already used
|
||||
--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
|
||||
END_DELIMITER
|
||||
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;
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
|
@ -1589,6 +1605,8 @@ append_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
|||
Appended text on nonexisting file
|
||||
EOF
|
||||
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
# test for cat_file
|
||||
# ----------------------------------------------------------------------------
|
||||
|
@ -1599,6 +1617,7 @@ for cat_file command
|
|||
of mysqltest
|
||||
EOF
|
||||
cat_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
|
||||
|
||||
--error 1
|
||||
--exec echo "cat_file non_existing_file;" | $MYSQL_TEST 2>&1
|
||||
|
@ -1719,6 +1738,7 @@ chmod 0000 $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
|||
#EOF
|
||||
|
||||
chmod 0777 $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/file1.tmp;
|
||||
--write_file $MYSQLTEST_VARDIR/tmp/file1.tmp
|
||||
test2
|
||||
EOF
|
||||
|
|
|
@ -42,6 +42,7 @@ insert into t1 values (0);
|
|||
flush table mysql.proc;
|
||||
|
||||
# Thrashing the .frm file
|
||||
--remove_file $MYSQLTEST_VARDIR/master-data/mysql/proc.frm
|
||||
--write_file $MYSQLTEST_VARDIR/master-data/mysql/proc.frm
|
||||
saljdfa
|
||||
EOF
|
||||
|
|
Loading…
Reference in a new issue