2 # https://rt.cpan.org/Public/Bug/Display.html?id=47865
3 # https://rt.cpan.org/Public/Bug/Display.html?id=52474
4 # https://rt.cpan.org/Public/Bug/Display.html?id=57683
5 # http://www.nntp.perl.org/group/perl.moose/2010/06/msg1767.html
7 # Summary: If we disable the "auto_help" option in Getopt::Long, then
8 # getoptions() will not call into pod2usage() (causing program termination)
9 # when --help is passed (and MooseX::ConfigFromFile is in use).
14 use Test::More tests => 1;
16 'MooseX::SimpleConfig' => 0.07, # skip all if not installed
22 use strict; use warnings;
26 'MooseX::SimpleConfig',
29 # this is a hacky way of being able to check that we made it past the
30 # $opt_parser->getoptions() call in new_with_options, because it is
31 # still going to bail out later on, on seeing the --help flag
33 is => 'ro', isa => 'Str',
36 'this_value_unimportant',
45 use Test::Fatal 0.003;
48 ok(!$fail_on_exit, 'getoptions() lives');
50 # cancel the non-zero exit status from _getopt_full_usage()
58 like exception { Class->new_with_options },
59 #usage: 107_no_auto_help.t [-?] [long options...]
60 qr/^usage: [\d\w]+\Q.t [-?] [long options...]\E.\s+\Q-? --usage --help Prints this usage information.\E.\s+--configfile/ms,
61 'usage information looks good';
63 qr/^Specified configfile \'this_value_unimportant\' does not exist, is empty, or is not readable$/,
64 'Our dummy config file doesn\'t exist';