mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug #44979 Enhance MTR --experimental to support platform qualifier
Adding @<platform> syntax
This commit is contained in:
@ -23,3 +23,10 @@ The syntax is as follows:
|
|||||||
start with the same characters up to the last letter before the asterisk
|
start with the same characters up to the last letter before the asterisk
|
||||||
are considered experimental:
|
are considered experimental:
|
||||||
main.a* # get rid of main.alias, main.alibaba and main.agliolio
|
main.a* # get rid of main.alias, main.alibaba and main.agliolio
|
||||||
|
|
||||||
|
6) Optionally, the test case may be followed by one or more platform
|
||||||
|
qualifiers beginning with @ or @!. The test will then be considered
|
||||||
|
experimental only/except on that platform. Basic OS names as
|
||||||
|
reported by $^O in Perl, or 'windows' are supported, this includes
|
||||||
|
solaris, linux, windows, aix, darwin, ... Example:
|
||||||
|
main.alias @aix @windows # Fails on those
|
||||||
|
@ -1 +1,2 @@
|
|||||||
funcs_1.charset_collation_1 # depends on compile-time decisions
|
funcs_1.charset_collation_1 # depends on compile-time decisions
|
||||||
|
main.plugin_load @solaris # Bug #42144
|
||||||
|
@ -984,6 +984,9 @@ sub command_line_setup {
|
|||||||
|
|
||||||
if ( $opt_experimental )
|
if ( $opt_experimental )
|
||||||
{
|
{
|
||||||
|
# $^O on Windows considered not generic enough
|
||||||
|
my $plat= (IS_WINDOWS) ? 'windows' : $^O;
|
||||||
|
|
||||||
# read the list of experimental test cases from the file specified on
|
# read the list of experimental test cases from the file specified on
|
||||||
# the command line
|
# the command line
|
||||||
open(FILE, "<", $opt_experimental) or mtr_error("Can't read experimental file: $opt_experimental");
|
open(FILE, "<", $opt_experimental) or mtr_error("Can't read experimental file: $opt_experimental");
|
||||||
@ -994,6 +997,15 @@ sub command_line_setup {
|
|||||||
# remove comments (# foo) at the beginning of the line, or after a
|
# remove comments (# foo) at the beginning of the line, or after a
|
||||||
# blank at the end of the line
|
# blank at the end of the line
|
||||||
s/( +|^)#.*$//;
|
s/( +|^)#.*$//;
|
||||||
|
# If @ platform specifier given, use this entry only if it contains
|
||||||
|
# @<platform> or @!<xxx> where xxx != platform
|
||||||
|
if (/\@.*/)
|
||||||
|
{
|
||||||
|
next if (/\@!$plat/);
|
||||||
|
next unless (/\@$plat/ or /\@!/);
|
||||||
|
# Then remove @ and everything after it
|
||||||
|
s/\@.*$//;
|
||||||
|
}
|
||||||
# remove whitespace
|
# remove whitespace
|
||||||
s/^ +//;
|
s/^ +//;
|
||||||
s/ +$//;
|
s/ +$//;
|
||||||
|
Reference in New Issue
Block a user