mariadb/mysql-test/suite/unit/suite.pm
Sergei Golubchik b3223453f7 post-merge changes to the mysql-test suite
mysql-test/include/check_ipv6.inc:
  don't try to connect to ipv6 address - the server isn't necessarily listening
  (e.g. a master doesn't, but a slave does. or vice versa)
mysql-test/include/default_mysqld.cnf:
  move hard-coded values from ConfigFactory.pm to a template.
  really disable syncs
mysql-test/include/have_archive_plugin.inc:
  wrong test. plugin is loaded in the test, it cannot be available before it
mysql-test/include/have_blackhole_plugin.inc:
  wrong test. plugin is loaded in the test, it cannot be available before it
mysql-test/include/have_federated_plugin.inc:
  wrong test. plugin is loaded in the test, it cannot be available before it
mysql-test/lib/My/ConfigFactory.pm:
  move hard-coded values from ConfigFactory.pm to a template.
  really disable syncs
mysql-test/mysql-test-run.pl:
  formatting
mysql-test/suite/funcs_1/t/is_engines_federated.opt:
  federated can be a plugin
mysql-test/suite/innodb/suite.pm:
  don't load xtradb plugin in embedded server - it lacks some symbols that xtradb needs
mysql-test/suite/unit/suite.pm:
  don't run unit tests in --embedded-server
  (for simplicity and speed)
2011-10-19 23:01:15 +02:00

44 lines
1.1 KiB
Perl

package My::Suite::CTest;
use Cwd;
@ISA = qw(My::Suite);
sub list_cases {
my ($self) = @_;
keys %{$self->{ctests}}
}
sub start_test {
my ($self, $tinfo)= @_;
my $args=[ ];
my $oldpwd=getcwd();
chdir $::opt_vardir;
my $proc=My::SafeProcess->new
(
name => $tinfo->{shortname},
path => $self->{ctests}->{$tinfo->{shortname}},
args => \$args,
append => 1,
output => $::path_current_testlog,
error => $::path_current_testlog,
);
chdir $oldpwd;
$proc;
}
{
return "Not run for embedded server" if $::opt_embedded_server;
return "Not configured to run ctest" unless -f "../CTestTestfile.cmake";
my ($ctest_vs)= $opt_vs_config ? "--build-config $opt_vs_config" : "";
my (@ctest_list)= `cd .. && ctest $opt_vs_config --show-only --verbose`;
return "No ctest" if $?;
my ($command, %tests);
for (@ctest_list) {
chomp;
$command= $' if /^\d+: Test command: +/;
$tests{$'}=$command if /^ +Test +#\d+: +/;
}
bless { ctests => { %tests } };
}