Test cases.

This commit is contained in:
Daniel Nichter
2012-10-22 12:16:42 -06:00
parent 289366ebdf
commit af1240b6f6
2 changed files with 36 additions and 1 deletions

View File

@@ -2057,6 +2057,28 @@ is(
"..and has the specified value", "..and has the specified value",
); );
# #############################################################################
# Bug 1039074: Tools exit 0 on error parsing options, should exit non-zero
# #############################################################################
# pt-archiver requires at least one of --dest, --file or --purge, as well as
# --where and --source. So specifying no options should cause errors.
@ARGV = qw();
$o = new OptionParser(file => "$trunk/bin/pt-archiver");
$o->get_specs();
$o->get_opts();
my $exit_status = 0;
($output, $exit_status) = full_output(
sub { $o->usage_or_errors("$trunk/bin/pt-archiver"); },
);
is(
$exit_status,
1,
"Non-zero exit status on error parsing options (bug 1039074)"
);
# ############################################################################# # #############################################################################
# Done. # Done.
# ############################################################################# # #############################################################################

View File

@@ -9,7 +9,7 @@ BEGIN {
use strict; use strict;
use warnings FATAL => 'all'; use warnings FATAL => 'all';
use English qw(-no_match_vars); use English qw(-no_match_vars);
use Test::More tests => 3; use Test::More tests => 4;
use PerconaTest; use PerconaTest;
@@ -39,6 +39,19 @@ like(
'Dest DSN requires t' 'Dest DSN requires t'
); );
# #############################################################################
# Bug 1039074: Tools exit 0 on error parsing options, should exit non-zero
# #############################################################################
system("$trunk/bin/pt-deadlock-logger --i-am-the-error >/dev/null 2>&1");
my $exit_status = $CHILD_ERROR >> 8;
is(
$exit_status,
1,
"Non-zero exit on option error (bug 1039074)"
);
# ############################################################################# # #############################################################################
# Done. # Done.
# ############################################################################# # #############################################################################