App-Basis
view release on metacpan or search on metacpan
#!/usr/bin/perl -w
=head1 NAME
app.t
=head1 DESCRIPTION
test App::Basis
=head1 AUTHOR
kevin mulholland, moodfarm@cpan.org
=cut
use v5.10;
use strict;
use warnings;
use Try::Tiny;
use Path::Tiny ;
use File::HomeDir ;
use Test::More tests => 20;
my $logfile = "/tmp/$$.log" ;
BEGIN { use_ok('App::Basis'); }
# App::Basis can die rather than exit, specially to help us test it!
set_test_mode(1);
set_log_file( $logfile) ;
# first off lest just test that it works
my $status = 0;
try {
@ARGV = ();
my %opt = init_app(
help_text => "Boiler plate code for an App::Basis app",
options => {}
);
$status = 1;
}
catch {
note " ERROR: caught $_";
};
ok( $status, 'Basic init_app' );
$status = 0;
try {
@ARGV = ();
my %opt = init_app(
help_text => "Boiler plate code for an App::Basis app",
options => { fred => { required => 1, desc => 'something' } }
);
}
catch {
note " CORRECT: caught $_";
$status = 1;
};
ok( $status, 'missing desc' );
$status = 0;
try {
@ARGV = ();
my %opt = init_app(
help_text => "Boiler plate code for an App::Basis app",
options => { fred => { desc => 'something', } }
);
$status = 1;
}
catch {
note " ERROR: caught $_";
};
ok( $status, 'has desc' );
$status = 0;
try {
@ARGV = ('--fred');
my %opt = init_app(
( run in 0.584 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )