App-SD
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
t/sd-usage.t view on Meta::CPAN
cmd => [ qw(ticket update -h) ],
error => [
'usage: sd-usage.t ticket update <record-id> --edit [--all-props]',
' sd-usage.t ticket update <record-id> -- status=open',
],
comment => 'ticket update usage',
},
{
cmd => [ qw(help -h) ],
error => [ 'usage: sd-usage.t help [<topic>]' ],
comment => 'help usage',
},
{
cmd => [ qw(browser -h) ],
error => [ 'usage: sd-usage.t browser [--port <number>]' ],
comment => 'browser usage',
},
{
cmd => [ qw(init -h) ],
error => [ 'usage: sd-usage.t init [--non-interactive]',
'',
'Options:',
" -n | --non-interactive - Don't prompt to edit settings or specify email",
' address for new database',
],
comment => 'init usage',
},
{
cmd => [ qw(clone -h) ],
error => [ 'usage: sd-usage.t clone --from <url> [--as <alias>] [--non-interactive] | --local',
'',
'Options:',
" -n | --non-interactive - Don't prompt to specify email address for new",
' database',
' --as - Save an alias for this source, which can later be',
' used instead of the URL.',
' --local - Probe the local network for mDNS-advertised',
' replicas and list them.',
],
comment => 'clone usage',
},
{
cmd => [ qw(-h) ],
error => [
'usage: sd-usage.t [cmd]',
' sd-usage.t --version | -V',
],
comment => 'no-command usage',
},
);
my $in_interactive_shell = 0;
for my $item ( @cmds ) {
my $exp_error
= defined $item->{error}
? (join "\n", @{$item->{error}})
: '';
my (undef, $got_error) = run_command( @{$item->{cmd}} );
{
local $/ = ""; # chomp paragraph mode
chomp $got_error;
chomp $exp_error;
}
is( $got_error, $exp_error, $item->{comment} . ' (non-shell)' );
}
$in_interactive_shell = 1;
for my $item ( @cmds ) {
my $exp_error
= defined $item->{error}
? (join "\n", @{$item->{error}}) . "\n"
: '';
# in an interactive shell, usage messages shouldn't be printing a command
# name
$exp_error =~ s/sd-usage.t //g;
my (undef, $got_error) = run_command( @{$item->{cmd}} );
{
local $/ = ""; # chomp paragraph mode
chomp $got_error;
chomp $exp_error;
}
is( $got_error, $exp_error, $item->{comment} . ' (in shell)');
}
no warnings 'redefine';
sub Prophet::CLI::interactive_shell {
return $in_interactive_shell;
}
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.474 second using v1.00-cache-2.02-grep-82fe00e-cpan-2c419f77a38b )