Below is the list of changes that have just been committed into a local
5.0 repository of msvensson. When msvensson does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-08-07 11:40:03+02:00, msvensson@pilot.(none) +7 -0
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@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +11 -5
Improve function comments
Make write_file fail if file already exist
mysql-test/r/mysqltest.result@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +2 -1
Update test result after adding new test and updating description
of argumements to chmod
mysql-test/t/bootstrap.test@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +5 -2
Remove temporary file created by testcase
mysql-test/t/mysql.test@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +3 -0
Remove temporary file created by testcase
mysql-test/t/mysqladmin.test@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +2 -1
Remove temporary file created by testcase
mysql-test/t/mysqltest.test@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +20 -0
Remove temporary file created by testcase
Add test to show that "write_file" fails if file already exist
mysql-test/t/sp-destruct.test@stripped, 2007-08-07 11:40:02+02:00, msvensson@pilot.(none) +1 -0
Remove temporary file created by testcase
diff -Nrup a/client/mysqltest.c b/client/mysqltest.c
--- a/client/mysqltest.c 2007-08-03 13:39:54 +02:00
+++ b/client/mysqltest.c 2007-08-07 11:40:02 +02:00
@@ -2525,8 +2525,8 @@ void do_copy_file(struct st_command *com
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 *co
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_com
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_com
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
diff -Nrup a/mysql-test/r/mysqltest.result b/mysql-test/r/mysqltest.result
--- a/mysql-test/r/mysqltest.result 2007-08-03 13:12:49 +02:00
+++ b/mysql-test/r/mysqltest.result 2007-08-07 11:40:02 +02:00
@@ -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 a
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
diff -Nrup a/mysql-test/t/bootstrap.test b/mysql-test/t/bootstrap.test
--- a/mysql-test/t/bootstrap.test 2007-02-20 12:48:14 +01:00
+++ b/mysql-test/t/bootstrap.test 2007-08-07 11:40:02 +02:00
@@ -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_V
--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;
diff -Nrup a/mysql-test/t/mysql.test b/mysql-test/t/mysql.test
--- a/mysql-test/t/mysql.test 2007-06-01 15:49:00 +02:00
+++ b/mysql-test/t/mysql.test 2007-08-07 11:40:02 +02:00
@@ -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
diff -Nrup a/mysql-test/t/mysqladmin.test b/mysql-test/t/mysqladmin.test
--- a/mysql-test/t/mysqladmin.test 2007-01-17 12:14:31 +01:00
+++ b/mysql-test/t/mysqladmin.test 2007-08-07 11:40:02 +02:00
@@ -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;
diff -Nrup a/mysql-test/t/mysqltest.test b/mysql-test/t/mysqltest.test
--- a/mysql-test/t/mysqltest.test 2007-08-03 13:12:49 +02:00
+++ b/mysql-test/t/mysqltest.test 2007-08-07 11:40:02 +02:00
@@ -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_fi
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_f
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.t
#EOF
chmod 0777 $MYSQLTEST_VARDIR/tmp/file1.tmp;
+remove_file $MYSQLTEST_VARDIR/tmp/file1.tmp;
--write_file $MYSQLTEST_VARDIR/tmp/file1.tmp
test2
EOF
diff -Nrup a/mysql-test/t/sp-destruct.test b/mysql-test/t/sp-destruct.test
--- a/mysql-test/t/sp-destruct.test 2007-03-21 18:58:09 +01:00
+++ b/mysql-test/t/sp-destruct.test 2007-08-07 11:40:02 +02:00
@@ -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
Thread |
---|
• bk commit into 5.0 tree (msvensson:1.2506) BUG#20037 | msvensson | 7 Aug |