X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F107_no_auto_help.t;h=f7d615a836156194fa8ecaee4670e97141aa342b;hb=d08ef824ff9b41efb8fbbc09fe6af178ef83080b;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..f7d615a 100644 --- a/t/107_no_auto_help.t +++ b/t/107_no_auto_help.t @@ -7,7 +7,14 @@ # Summary: If we disable the "auto_help" option in Getopt::Long, then # getoptions() will not call into pod2usage() (causing program termination) # when --help is passed (and MooseX::ConfigFromFile is in use). +use strict; +use warnings; +use Test::More; + +use Test::Requires { + 'MooseX::SimpleConfig' => 0.07, # skip all if not installed +}; my $fail_on_exit = 1; { @@ -30,25 +37,31 @@ 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; +use Test::Warn 0.21; +use Test::Exception; END { ok(!$fail_on_exit, 'getoptions() lives'); + done_testing; + # cancel the non-zero exit status from _getopt_full_usage() exit 0; } @ARGV = ('--help'); -Class->new_with_options; + +warning_like { + throws_ok { 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';