X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F107_no_auto_help.t;h=989e81dfc087c762efdea85ebe5178e262c6e49d;hb=986fb4690bc00c860b1f728b986e39b412100854;hp=54500922b7fb74cd915bac4435911b03bd247fda;hpb=13f71373313b4df297eb33ea45a9e671820a487e;p=gitmo%2FMooseX-Getopt.git diff --git a/t/107_no_auto_help.t b/t/107_no_auto_help.t index 5450092..989e81d 100644 --- a/t/107_no_auto_help.t +++ b/t/107_no_auto_help.t @@ -8,11 +8,20 @@ # getoptions() will not call into pod2usage() (causing program termination) # when --help is passed (and MooseX::ConfigFromFile is in use). +use strict; +use warnings FATAL => 'all'; + +use Test::Requires { 'MooseX::SimpleConfig' => 0.07 }; # skip all if not installed +use Test::More tests => 2; +use Test::Warn 0.21; +use Test::Fatal 0.003; + +use Test::Warnings; my $fail_on_exit = 1; { package Class; - use strict; use warnings; + use strict; use warnings FATAL => 'all'; use Moose; with @@ -30,25 +39,26 @@ my $fail_on_exit = 1; }, ); - # only here to avoid an "unknown option: help" warning - has help => ( - is => 'ro', isa => 'Bool', - ); - no Moose; 1; } -use Test::More tests => 1; - END { ok(!$fail_on_exit, 'getoptions() lives'); - # cancel the non-zero exit status from _getopt_full_usage() + # cancel the non-zero exit status from print_usage_text() exit 0; } @ARGV = ('--help'); -Class->new_with_options; + +warning_like { + like exception { Class->new_with_options }, + #usage: 107_no_auto_help.t [-?] [long options...] + qr/^usage: [\d\w]+\Q.t [-?] [long options...]\E.\s+\Q-? --usage --help Prints this usage information.\E.\s+--configfile/ms, + 'usage information looks good'; + } + qr/^Specified configfile \'this_value_unimportant\' does not exist, is empty, or is not readable$/, + 'Our dummy config file doesn\'t exist';