Commit c8912ccf authored by Sergei Golubchik's avatar Sergei Golubchik

allow suite.pm to tell mtr to skip the suite

parent dddf219d
...@@ -31,6 +31,8 @@ package that inherits from My::Suite. ...@@ -31,6 +31,8 @@ package that inherits from My::Suite.
The suite.pm needs to have @ISA=qw(My::Suite) and it must end The suite.pm needs to have @ISA=qw(My::Suite) and it must end
with bless {}; - that is it must return an object of that class. with bless {}; - that is it must return an object of that class.
It can also return a string - in this case all tests in the suite
will be skipped, with this string being printed as a reason.
A suite class can define config_files() and servers() methods. A suite class can define config_files() and servers() methods.
......
...@@ -997,6 +997,13 @@ sub collect_one_test_case { ...@@ -997,6 +997,13 @@ sub collect_one_test_case {
} }
} }
if (not ref $::suites{$tinfo->{suite}})
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= $::suites{$tinfo->{suite}};
return $tinfo;
}
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# Append mysqld extra options to master and slave, as appropriate # Append mysqld extra options to master and slave, as appropriate
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
......
...@@ -3,12 +3,14 @@ package My::Suite::InnoDB_plugin; ...@@ -3,12 +3,14 @@ package My::Suite::InnoDB_plugin;
@ISA = qw(My::Suite); @ISA = qw(My::Suite);
############# initialization ###################### ############# initialization ######################
my @combinations=('none'); my @combinations;
push @combinations, 'innodb_plugin' if $ENV{HA_INNODB_PLUGIN_SO}; push @combinations, 'innodb_plugin' if $ENV{HA_INNODB_PLUGIN_SO};
push @combinations, 'xtradb_plugin' if $ENV{HA_XTRADB_SO}; push @combinations, 'xtradb_plugin' if $ENV{HA_XTRADB_SO};
push @combinations, 'xtradb' if $::mysqld_variables{'innodb'} eq "ON"; push @combinations, 'xtradb' if $::mysqld_variables{'innodb'} eq "ON";
return "Neither innodb_plugin nor xtradb are available" unless @combinations;
$ENV{INNODB_PLUGIN_COMBINATIONS}=join ':', @combinations $ENV{INNODB_PLUGIN_COMBINATIONS}=join ':', @combinations
unless $ENV{INNODB_PLUGIN_COMBINATIONS}; unless $ENV{INNODB_PLUGIN_COMBINATIONS};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment