From d7b1a5f2a176e9be1789537d95b0efce5e4b770b Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 19 Jul 2006 14:25:52 +0200 Subject: Update 'abort_not_supported_test' to print a reason why the test was aborted and use it in mysql-test-run.pl Use standard defines as last argument to 'fn_format' mysql-test/r/not_ndb_default.require: Rename: mysql-test/r/true.require -> mysql-test/r/not_ndb_default.require client/mysqltest.c: Use proper defines for last argument to fn_format(they are defined in my_sys.h) Make abort_not_supported_test print info about in what file the test was aborted and a reason for it. The reason is a best guess, using the filename of the .require file to format it. mysql-test/include/not_ndb_default.inc: Use a more descriptive name of the .require file mysql-test/include/not_windows.inc: Use a more descriptive name of the .require file mysql-test/include/windows.inc: Use a more descriptive name of the .require file mysql-test/lib/mtr_io.pl: Add new function 'mtr_lastlinefromfile' that will return only the last line of a file. mysql-test/mysql-test-run.pl: Get reason why mysqltest decided to abort testcase from mysqltest.log mysql-test/r/not_windows.require: New BitKeeper file ``mysql-test/r/not_windows.require'' mysql-test/r/windows.require: New BitKeeper file ``mysql-test/r/windows.require'' --- mysql-test/include/not_ndb_default.inc | 2 +- mysql-test/include/not_windows.inc | 2 +- mysql-test/include/windows.inc | 2 +- mysql-test/lib/mtr_io.pl | 16 +++++++++++++++- mysql-test/mysql-test-run.pl | 7 +++++-- mysql-test/r/not_ndb_default.require | 2 ++ mysql-test/r/not_windows.require | 2 ++ mysql-test/r/true.require | 2 -- mysql-test/r/windows.require | 2 ++ 9 files changed, 29 insertions(+), 8 deletions(-) create mode 100644 mysql-test/r/not_ndb_default.require create mode 100644 mysql-test/r/not_windows.require delete mode 100644 mysql-test/r/true.require create mode 100644 mysql-test/r/windows.require (limited to 'mysql-test') diff --git a/mysql-test/include/not_ndb_default.inc b/mysql-test/include/not_ndb_default.inc index 1c148732a47..ca3c57a671a 100644 --- a/mysql-test/include/not_ndb_default.inc +++ b/mysql-test/include/not_ndb_default.inc @@ -1,4 +1,4 @@ ---require r/true.require +--require r/not_ndb_default.require disable_query_log; select convert(@@table_type using latin1) NOT IN ("ndbcluster","NDBCLUSTER") as "TRUE"; enable_query_log; diff --git a/mysql-test/include/not_windows.inc b/mysql-test/include/not_windows.inc index 54e9e0e817a..9240271077a 100644 --- a/mysql-test/include/not_windows.inc +++ b/mysql-test/include/not_windows.inc @@ -1,4 +1,4 @@ ---require r/true.require +--require r/not_windows.require disable_query_log; select convert(@@version_compile_os using latin1) NOT IN ("Win32","Win64","Windows") as "TRUE"; enable_query_log; diff --git a/mysql-test/include/windows.inc b/mysql-test/include/windows.inc index 05ec7b0e021..3d64efbafc7 100644 --- a/mysql-test/include/windows.inc +++ b/mysql-test/include/windows.inc @@ -1,4 +1,4 @@ ---require r/true.require +--require r/windows.require disable_query_log; select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows") as "TRUE"; enable_query_log; diff --git a/mysql-test/lib/mtr_io.pl b/mysql-test/lib/mtr_io.pl index b3da6d97664..df32ea4692a 100644 --- a/mysql-test/lib/mtr_io.pl +++ b/mysql-test/lib/mtr_io.pl @@ -11,6 +11,7 @@ sub mtr_get_opts_from_file ($); sub mtr_fromfile ($); sub mtr_tofile ($@); sub mtr_tonewfile($@); +sub mtr_lastlinefromfile($); ############################################################################## # @@ -113,6 +114,20 @@ sub mtr_fromfile ($) { return $text; } +sub mtr_lastlinefromfile ($) { + my $file= shift; + my $text; + + open(FILE,"<",$file) or mtr_error("can't open file \"$file\": $!"); + while (my $line= ) + { + $text= $line; + } + close FILE; + return $text; +} + + sub mtr_tofile ($@) { my $file= shift; @@ -129,5 +144,4 @@ sub mtr_tonewfile ($@) { close FILE; } - 1; diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index 2f189f01d29..8b48f87c138 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -2330,8 +2330,11 @@ sub run_testcase ($) { elsif ( $res == 62 ) { # Testcase itself tell us to skip this one - # FIXME get reason to skip from mysqltest - $tinfo->{'comment'}= "Detected by testcase"; + + # Try to get reason from mysqltest.log + my $last_line= mtr_lastlinefromfile($path_timefile) if -f $path_timefile; + my $reason= mtr_match_prefix($last_line, "reason: "); + $tinfo->{'comment'}= defined $reason ? $reason : "Detected by testcase(reason unknown) "; mtr_report_test_skipped($tinfo); } elsif ( $res == 63 ) diff --git a/mysql-test/r/not_ndb_default.require b/mysql-test/r/not_ndb_default.require new file mode 100644 index 00000000000..09aae1ed1d0 --- /dev/null +++ b/mysql-test/r/not_ndb_default.require @@ -0,0 +1,2 @@ +TRUE +1 diff --git a/mysql-test/r/not_windows.require b/mysql-test/r/not_windows.require new file mode 100644 index 00000000000..09aae1ed1d0 --- /dev/null +++ b/mysql-test/r/not_windows.require @@ -0,0 +1,2 @@ +TRUE +1 diff --git a/mysql-test/r/true.require b/mysql-test/r/true.require deleted file mode 100644 index 09aae1ed1d0..00000000000 --- a/mysql-test/r/true.require +++ /dev/null @@ -1,2 +0,0 @@ -TRUE -1 diff --git a/mysql-test/r/windows.require b/mysql-test/r/windows.require new file mode 100644 index 00000000000..09aae1ed1d0 --- /dev/null +++ b/mysql-test/r/windows.require @@ -0,0 +1,2 @@ +TRUE +1 -- cgit v1.2.1