{
plan skip_all => "IPC::Run not available";
};
-
- eval {
- Test::More->VERSION('0.93_01');
- } or do
- {
- plan skip_all => "version of Test::More is too old to support subplans";
- };
-
- eval {
- require Test::Simple;
- Test::Simple->VERSION('0.98');
- } or do
- {
- plan skip_all => "version of Test::Simple is too old to support subplans properly";
- };
}
# Set to untranslated messages, to be able to compare program output
sub program_help_ok
{
my ($cmd) = @_;
- subtest "$cmd --help" => sub {
- plan tests => 3;
- my ($stdout, $stderr);
- my $result = run [ $cmd, '--help' ], '>', \$stdout, '2>', \$stderr;
- ok($result, "$cmd --help exit code 0");
- isnt($stdout, '', "$cmd --help goes to stdout");
- is($stderr, '', "$cmd --help nothing to stderr");
- };
+ my ($stdout, $stderr);
+ my $result = run [ $cmd, '--help' ], '>', \$stdout, '2>', \$stderr;
+ ok($result, "$cmd --help exit code 0");
+ isnt($stdout, '', "$cmd --help goes to stdout");
+ is($stderr, '', "$cmd --help nothing to stderr");
}
sub program_version_ok
{
my ($cmd) = @_;
- subtest "$cmd --version" => sub {
- plan tests => 3;
- my ($stdout, $stderr);
- my $result = run [ $cmd, '--version' ], '>', \$stdout, '2>', \$stderr;
- ok($result, "$cmd --version exit code 0");
- isnt($stdout, '', "$cmd --version goes to stdout");
- is($stderr, '', "$cmd --version nothing to stderr");
- };
+ my ($stdout, $stderr);
+ my $result = run [ $cmd, '--version' ], '>', \$stdout, '2>', \$stderr;
+ ok($result, "$cmd --version exit code 0");
+ isnt($stdout, '', "$cmd --version goes to stdout");
+ is($stderr, '', "$cmd --version nothing to stderr");
}
sub program_options_handling_ok
{
my ($cmd) = @_;
- subtest "$cmd options handling" => sub {
- plan tests => 2;
- my ($stdout, $stderr);
- my $result = run [ $cmd, '--not-a-valid-option' ], '>', \$stdout,
- '2>', \$stderr;
- ok(!$result, "$cmd with invalid option nonzero exit code");
- isnt($stderr, '', "$cmd with invalid option prints error message");
- };
+ my ($stdout, $stderr);
+ my $result = run [ $cmd, '--not-a-valid-option' ], '>', \$stdout, '2>', \$stderr;
+ ok(!$result, "$cmd with invalid option nonzero exit code");
+ isnt($stderr, '', "$cmd with invalid option prints error message");
}
sub command_like
{
my ($cmd, $expected_stdout, $test_name) = @_;
- subtest $test_name => sub {
- plan tests => 3;
- my ($stdout, $stderr);
- my $result = run $cmd, '>', \$stdout, '2>', \$stderr;
- ok($result, "@$cmd exit code 0");
- is($stderr, '', "@$cmd no stderr");
- like($stdout, $expected_stdout, "$test_name: matches");
- };
+ my ($stdout, $stderr);
+ my $result = run $cmd, '>', \$stdout, '2>', \$stderr;
+ ok($result, "@$cmd exit code 0");
+ is($stderr, '', "@$cmd no stderr");
+ like($stdout, $expected_stdout, "$test_name: matches");
}
sub issues_sql_like
{
my ($cmd, $expected_sql, $test_name) = @_;
- subtest $test_name => sub {
- plan tests => 2;
- my ($stdout, $stderr);
- truncate $test_server_logfile, 0;
- my $result = run $cmd, '>', \$stdout, '2>', \$stderr;
- ok($result, "@$cmd exit code 0");
- my $log = `cat '$test_server_logfile'`;
- like($log, $expected_sql, "$test_name: SQL found in server log");
- };
+ my ($stdout, $stderr);
+ truncate $test_server_logfile, 0;
+ my $result = run $cmd, '>', \$stdout, '2>', \$stderr;
+ ok($result, "@$cmd exit code 0");
+ my $log = `cat '$test_server_logfile'`;
+ like($log, $expected_sql, "$test_name: SQL found in server log");
}
1;