PATH=/usr/bin:/bin:/Users/fly2000/cpanfly-5.20/var/megalib/bin
Start 2017-07-22T10:07:05
ActivePerl-2000 CPAN-2.10
Reading '/Users/fly2000/cpanfly-5.20/var/cpan/Metadata'
Database was generated on Sat, 22 Jul 2017 04:29:03 GMT
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz ok
Perinci-CmdLine-Lite-1.77/
Perinci-CmdLine-Lite-1.77/README
Perinci-CmdLine-Lite-1.77/dist.ini
Perinci-CmdLine-Lite-1.77/Changes.new
Perinci-CmdLine-Lite-1.77/Makefile.PL
Perinci-CmdLine-Lite-1.77/META.yml
Perinci-CmdLine-Lite-1.77/t/
Perinci-CmdLine-Lite-1.77/t/author-pod-syntax.t
Perinci-CmdLine-Lite-1.77/t/00-compile.t
Perinci-CmdLine-Lite-1.77/t/suite.t
Perinci-CmdLine-Lite-1.77/t/author-pod-coverage.t
Perinci-CmdLine-Lite-1.77/weaver.ini
Perinci-CmdLine-Lite-1.77/META.json
Perinci-CmdLine-Lite-1.77/share/
Perinci-CmdLine-Lite-1.77/share/templates/
Perinci-CmdLine-Lite-1.77/share/templates/description.txt
Perinci-CmdLine-Lite-1.77/share/templates/synopsis.txt
Perinci-CmdLine-Lite-1.77/MANIFEST
Perinci-CmdLine-Lite-1.77/lib/
Perinci-CmdLine-Lite-1.77/lib/Perinci/
Perinci-CmdLine-Lite-1.77/lib/Perinci/CmdLine/
Perinci-CmdLine-Lite-1.77/lib/Perinci/CmdLine/Base.pm
Perinci-CmdLine-Lite-1.77/lib/Perinci/CmdLine/Lite.pm
Perinci-CmdLine-Lite-1.77/LICENSE
Perinci-CmdLine-Lite-1.77/devscripts/
Perinci-CmdLine-Lite-1.77/devscripts/bench-startup
Perinci-CmdLine-Lite-1.77/Changes
Configuring P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz with Makefile.PL
>>> /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL
Warning: prerequisite Perinci::CmdLine::Help 0.15 not found. We have 0.14.
Warning: prerequisite Progress::Any::Output::TermProgressBarColor 0.17 not found. We have 0.10.
Checking if your kit is complete...
Looks good
Have /Users/fly2000/cpanfly-5.20/var/megalib
Want /Users/fly2000/ap2000-298465/lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [megalib]
Config says: [darwin-thread-multi-2level]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a Unix-style Makefile
Writing Makefile for Perinci::CmdLine::Lite
Writing MYMETA.yml and MYMETA.json
PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
/Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK
Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
---- Unsatisfied dependencies detected during ----
---- PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz ----
Progress::Any::Output::TermProgressBarColor [requires]
Perinci::CmdLine::Help [requires]
Running test for module 'Progress::Any::Output::TermProgressBarColor'
Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz ok
Progress-Any-Output-TermProgressBarColor-0.23/
Progress-Any-Output-TermProgressBarColor-0.23/README
Progress-Any-Output-TermProgressBarColor-0.23/lib/
Progress-Any-Output-TermProgressBarColor-0.23/lib/Progress/
Progress-Any-Output-TermProgressBarColor-0.23/lib/Progress/Any/
Progress-Any-Output-TermProgressBarColor-0.23/lib/Progress/Any/Output/
Progress-Any-Output-TermProgressBarColor-0.23/lib/Progress/Any/Output/TermProgressBarColor.pm
Progress-Any-Output-TermProgressBarColor-0.23/Makefile.PL
Progress-Any-Output-TermProgressBarColor-0.23/Changes
Progress-Any-Output-TermProgressBarColor-0.23/dist.ini
Progress-Any-Output-TermProgressBarColor-0.23/LICENSE
Progress-Any-Output-TermProgressBarColor-0.23/t/
Progress-Any-Output-TermProgressBarColor-0.23/t/00-compile.t
Progress-Any-Output-TermProgressBarColor-0.23/t/01-basic.t
Progress-Any-Output-TermProgressBarColor-0.23/t/author-pod-syntax.t
Progress-Any-Output-TermProgressBarColor-0.23/t/author-pod-coverage.t
Progress-Any-Output-TermProgressBarColor-0.23/weaver.ini
Progress-Any-Output-TermProgressBarColor-0.23/MANIFEST
Progress-Any-Output-TermProgressBarColor-0.23/META.json
Progress-Any-Output-TermProgressBarColor-0.23/META.yml
Configuring P/PE/PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz with Makefile.PL
>>> /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL
Checking if your kit is complete...
Looks good
Have /Users/fly2000/cpanfly-5.20/var/megalib
Want /Users/fly2000/ap2000-298465/lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [megalib]
Config says: [darwin-thread-multi-2level]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a Unix-style Makefile
Writing Makefile for Progress::Any::Output::TermProgressBarColor
Writing MYMETA.yml and MYMETA.json
PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz
/Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK
Running make for P/PE/PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz
>>> make
cp lib/Progress/Any/Output/TermProgressBarColor.pm blib/lib/Progress/Any/Output/TermProgressBarColor.pm
Manifying 1 pod document
PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz
make -- OK
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 "/Users/fly2000/ap2000-298465/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ...........
1..1
ok 1 - Progress/Any/Output/TermProgressBarColor.pm loaded ok
ok
# Failed test at t/01-basic.t line 18.
# ' 10% []1s left [0m'
# doesn't match '(?^:foo)'
# Looks like you failed 1 test of 2.
# Failed test 'default'
# at t/01-basic.t line 20.
# Failed test at t/01-basic.t line 28.
# 'Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 285.
# Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 287.
# Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 289.
# Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 285.
# Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 287.
# Use of uninitialized value $cd in numeric ge (>=) at /Users/fly2000/cpanfly-5.20/var/megalib/Color/ANSI/Util.pm line 289.
# 20% []1s left [0m'
# doesn't match '(?^:foo)'
# Looks like you failed 1 test of 2.
# Failed test 'fh option'
# at t/01-basic.t line 30.
# Failed test at t/01-basic.t line 41.
# ' 30% []1s left [0m'
# doesn't match '(?^:foo)'
# Looks like you failed 1 test of 2.
# Failed test 'default (wide)'
# at t/01-basic.t line 43.
# Looks like you failed 3 tests of 3.
t/01-basic.t .............
# Subtest: default
not ok 1
ok 2
1..2
not ok 1 - default
# Subtest: fh option
not ok 1
ok 2
1..2
not ok 2 - fh option
# Subtest: default (wide)
not ok 1
ok 2
1..2
not ok 3 - default (wide)
1..3
Dubious, test returned 3 (wstat 768, 0x300)
Failed 3/3 subtests
t/author-pod-coverage.t .. skipped: these tests are for testing by the author
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
Test Summary Report
-------------------
t/01-basic.t (Wstat: 768 Tests: 3 Failed: 3)
Failed tests: 1-3
Non-zero exit status: 3
Files=4, Tests=4, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.24 cusr 0.05 csys = 0.34 CPU)
Result: FAIL
Failed 1/4 test programs. 3/4 subtests failed.
make: *** [test_dynamic] Error 255
PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz
make test TEST_VERBOSE=1 -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz
Running test for module 'Perinci::CmdLine::Help'
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz ok
Perinci-CmdLine-Help-0.15/
Perinci-CmdLine-Help-0.15/README
Perinci-CmdLine-Help-0.15/dist.ini
Perinci-CmdLine-Help-0.15/Makefile.PL
Perinci-CmdLine-Help-0.15/META.yml
Perinci-CmdLine-Help-0.15/t/
Perinci-CmdLine-Help-0.15/t/author-pod-syntax.t
Perinci-CmdLine-Help-0.15/t/release-rinci.t
Perinci-CmdLine-Help-0.15/t/00-compile.t
Perinci-CmdLine-Help-0.15/t/author-pod-coverage.t
Perinci-CmdLine-Help-0.15/weaver.ini
Perinci-CmdLine-Help-0.15/META.json
Perinci-CmdLine-Help-0.15/MANIFEST
Perinci-CmdLine-Help-0.15/lib/
Perinci-CmdLine-Help-0.15/lib/Perinci/
Perinci-CmdLine-Help-0.15/lib/Perinci/CmdLine/
Perinci-CmdLine-Help-0.15/lib/Perinci/CmdLine/Help.pm
Perinci-CmdLine-Help-0.15/LICENSE
Perinci-CmdLine-Help-0.15/Changes
Configuring P/PE/PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz with Makefile.PL
>>> /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL
Checking if your kit is complete...
Looks good
Have /Users/fly2000/cpanfly-5.20/var/megalib
Want /Users/fly2000/ap2000-298465/lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [megalib]
Config says: [darwin-thread-multi-2level]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a Unix-style Makefile
Writing Makefile for Perinci::CmdLine::Help
Writing MYMETA.yml and MYMETA.json
PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
/Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK
Running make for P/PE/PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
>>> make
cp lib/Perinci/CmdLine/Help.pm blib/lib/Perinci/CmdLine/Help.pm
Manifying 1 pod document
PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
make -- OK
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 "/Users/fly2000/ap2000-298465/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ...........
1..1
ok 1 - Perinci/CmdLine/Help.pm loaded ok
ok
t/author-pod-coverage.t .. skipped: these tests are for testing by the author
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
t/release-rinci.t ........ skipped: these tests are for release candidate testing
All tests successful.
Files=4, Tests=1, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.07 cusr 0.03 csys = 0.15 CPU)
Result: PASS
PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
make test TEST_VERBOSE=1 -- OK
perlancar <perlancar@gmail.com>
Generate help message for Perinci::CmdLine-based app
>>> (cd /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Help-0.15-YkOiGT && tar cvf - Perinci-CmdLine-Help-0.15.ppd blib) | gzip -c >/Users/fly2000/cpanfly-5.20/var/REPO/P/PE/PERLANCAR/Perinci-CmdLine-Help-0.15.tar.gz
Perinci-CmdLine-Help-0.15.ppd
blib/
blib/lib/
blib/lib/Perinci/
blib/lib/Perinci/CmdLine/
blib/lib/Perinci/CmdLine/Help.pm
blib/man3/
blib/man3/Perinci::CmdLine::Help.3
PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
Has already been unwrapped into directory /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Lite-1.77-V9LLUx
PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
Has already been prepared
Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Help-0.15-YkOiGT/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Help-0.15-YkOiGT/blib/lib to PERL5LIB for 'make'
Warning: Prerequisite 'Progress::Any::Output::TermProgressBarColor => 0.17' for 'PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz' failed when processing 'PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.23.tar.gz' with 'make_test => NO'. Continuing, but chances to succeed are limited.
>>> make
cp share/templates/synopsis.txt blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/synopsis.txt
cp share/templates/description.txt blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/description.txt
cp lib/Perinci/CmdLine/Lite.pm blib/lib/Perinci/CmdLine/Lite.pm
cp lib/Perinci/CmdLine/Base.pm blib/lib/Perinci/CmdLine/Base.pm
Manifying 2 pod documents
PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
make -- OK
Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Help-0.15-YkOiGT/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Help-0.15-YkOiGT/blib/lib to PERL5LIB for 'test'
Running make test
>>> make test TEST_VERBOSE=1
Skip blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/description.txt (unchanged)
Skip blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/synopsis.txt (unchanged)
PERL_DL_NONLAZY=1 "/Users/fly2000/ap2000-298465/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ...........
1..2
ok 1 - Perinci/CmdLine/Base.pm loaded ok
ok 2 - Perinci/CmdLine/Lite.pm loaded ok
ok
t/author-pod-coverage.t .. skipped: these tests are for testing by the author
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
t/suite.t ................
# Subtest: help action
ok 1 - dummy
# Subtest: --help
# Generated CLI script at /tmp/HqWjtEkdYk/cliwMCQY4ee
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliwMCQY4ee',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '--help'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - --help
# Subtest: + is not accepted as option starter
# Generated CLI script at /tmp/HqWjtEkdYk/cliRWI8bhca
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliRWI8bhca',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '+h'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 3 - + is not accepted as option starter
# Subtest: + is not accepted as option starter (2)
# Generated CLI script at /tmp/HqWjtEkdYk/cliYSNBJHst
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliYSNBJHst',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '+help'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 4 - + is not accepted as option starter (2)
# Subtest: extra args is okay
# Generated CLI script at /tmp/HqWjtEkdYk/cliJCOoQjSg
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliJCOoQjSg',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '--help',
# '1',
# '2',
# '3'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - extra args is okay
# Subtest: help for cli with subcommands
# Generated CLI script at /tmp/HqWjtEkdYk/clisjqiNb2I
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clisjqiNb2I',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'sc1' => '/Perinci/Examples/Tiny/noop'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# '--help'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - help for cli with subcommands
# Subtest: help on a subcommand
# Generated CLI script at /tmp/HqWjtEkdYk/clieHIjSKhT
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clieHIjSKhT',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'sc1' => '/Perinci/Examples/Tiny/noop'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# 'sc1',
# '--help'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
ok 3 - stdout_unlike
1..3
ok 7 - help on a subcommand
1..7
ok 1 - help action
# Subtest: version action
ok 1 - dummy
# Subtest: --version
# Generated CLI script at /tmp/HqWjtEkdYk/clicMGpHq_5
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clicMGpHq_5',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '--version'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - --version
1..2
ok 2 - version action
# Subtest: subcommands action
ok 1 - dummy
# Subtest: --subcommands
# Generated CLI script at /tmp/HqWjtEkdYk/cliGQRD7Z82
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliGQRD7Z82',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'noop' => '/Perinci/Examples/Tiny/noop',
# 'odd_even' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# '--subcommands'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - --subcommands
# Subtest: unknown subcommand = error
# Generated CLI script at /tmp/HqWjtEkdYk/cli3miupmwe
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli3miupmwe',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'noop' => '/Perinci/Examples/Tiny/noop',
# 'odd_even' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# 'foo'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 3 - unknown subcommand = error
# Subtest: default_subcommand
# Generated CLI script at /tmp/HqWjtEkdYk/clitnJEdjXc
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'default_subcommand' => 'noop',
# 'output_file' => '/tmp/HqWjtEkdYk/clitnJEdjXc',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'noop' => '/Perinci/Examples/Tiny/noop',
# 'odd_even' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: []
# Script's stdout: <>
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - default_subcommand
# Subtest: default_subcommand 2
# Generated CLI script at /tmp/HqWjtEkdYk/cliB066zQOT
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'default_subcommand' => 'odd_even',
# 'output_file' => '/tmp/HqWjtEkdYk/cliB066zQOT',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'noop' => '/Perinci/Examples/Tiny/noop',
# 'odd_even' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 5 - default_subcommand 2
1..5
ok 3 - subcommands action
# Subtest: call action
ok 1 - dummy
# Subtest: embedded function+meta works
# Generated CLI script at /tmp/HqWjtEkdYk/cliqBfK2YMs
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'code_before_instantiate_cmdline' => '
# our %SPEC;
# $SPEC{square} = {v=>1.1, args=>{num=>{schema=>\'num*\', req=>1, pos=>0}}};
# sub square { my %args=@_; [200, "OK", $args{num}**2] }
# ',
# 'output_file' => '/tmp/HqWjtEkdYk/cliqBfK2YMs',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/main/square'
# }
# argv: [
# '12'
# ]
# Script's stdout: <144
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - embedded function+meta works
# Subtest: extra args not allowed
# Generated CLI script at /tmp/HqWjtEkdYk/cliuarcl7co
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliuarcl7co',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/noop'
# }
# argv: [
# '1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 3 - extra args not allowed
# Subtest: missing required args -> error
# Generated CLI script at /tmp/HqWjtEkdYk/cliy2VNJhsY
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliy2VNJhsY',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/odd_even'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 4 - missing required args -> error
# Subtest: common option: --format
# Generated CLI script at /tmp/HqWjtEkdYk/clig4ykIr_u
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clig4ykIr_u',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/Args/as_is'
# }
# argv: [
# '--arg',
# 'abc',
# '--format',
# 'json'
# ]
# Script's stdout: <[200,"OK","abc",{"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - common option: --format
# Subtest: common option: --json
# Generated CLI script at /tmp/HqWjtEkdYk/cliewtDyZMj
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliewtDyZMj',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/Args/as_is'
# }
# argv: [
# '--arg',
# 'abc',
# '--json'
# ]
# Script's stdout: <[200,"OK","abc",{"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - common option: --json
# Subtest: common option: --naked-res
# Generated CLI script at /tmp/HqWjtEkdYk/cliZtau3jaU
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliZtau3jaU',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/Args/as_is'
# }
# argv: [
# '--arg',
# 'abc',
# '--json',
# '--naked-res'
# ]
# Script's stdout: <"abc"
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 7 - common option: --naked-res
# Subtest: common option: --no-naked-res
# Generated CLI script at /tmp/HqWjtEkdYk/clilVxOzu8q
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clilVxOzu8q',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/Args/as_is'
# }
# argv: [
# '--arg',
# 'abc',
# '--json',
# '--no-naked-res'
# ]
# Script's stdout: <[200,"OK","abc",{"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 8 - common option: --no-naked-res
# Subtest: common option: --cmd
# Generated CLI script at /tmp/HqWjtEkdYk/clioc7ucQF4
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'default_subcommand' => 'noop',
# 'output_file' => '/tmp/HqWjtEkdYk/clioc7ucQF4',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'noop' => '/Perinci/Examples/Tiny/noop',
# 'odd_even' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# '--cmd',
# 'odd_even',
# '5'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 9 - common option: --cmd
# Subtest: json argument
# Generated CLI script at /tmp/HqWjtEkdYk/cli0jENnnBu
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli0jENnnBu',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/Args/as_is'
# }
# argv: [
# '--arg-json',
# '["a","b"]',
# '--json'
# ]
# Script's stdout: <[200,"OK",["a","b"],{"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 10 - json argument
# Subtest: can handle function which returns naked result
# Generated CLI script at /tmp/HqWjtEkdYk/cli4jH7wqGY
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli4jH7wqGY',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/hello_naked'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 11 - can handle function which returns naked result
1..11
ok 4 - call action
# Subtest: cmdline_src (error cases)
ok 1 - dummy
# Subtest: unknown value
# Generated CLI script at /tmp/HqWjtEkdYk/clijpvA7xMA
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clijpvA7xMA',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_unknown'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 2 - unknown value
# Subtest: arg type not str/array
# Generated CLI script at /tmp/HqWjtEkdYk/cliBFjOUoRY
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliBFjOUoRY',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_invalid_arg_type'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 3 - arg type not str/array
# Subtest: multiple stdin
# Generated CLI script at /tmp/HqWjtEkdYk/cliKcM1ZLiX
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliKcM1ZLiX',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_multi_stdin'
# }
# argv: [
# 'a',
# 'b'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 4 - multiple stdin
1..4
ok 5 - cmdline_src (error cases)
# Subtest: cmdline_src (file)
ok 1 - dummy
# Subtest: file 1
# Generated CLI script at /tmp/HqWjtEkdYk/cli3Iunq6Ph
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli3Iunq6Ph',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--a1',
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - file 1
# Subtest: file 1 (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/climqciPepn
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/climqciPepn',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--json',
# '--a1',
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout: <[200,"OK","a1=foo\na2=[]",{"func.args":{"-cmdline_src_a1":"file","-cmdline_srcfilenames_a1":["/tmp/HqWjtEkdYk/infile1"],"a1":"foo"},"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
ok 3 - stdout_like
1..3
ok 3 - file 1 (special hint arguments passed)
# Subtest: file 2
# Generated CLI script at /tmp/HqWjtEkdYk/clinufTx8NL
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clinufTx8NL',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--a1',
# '/tmp/HqWjtEkdYk/infile1',
# '--a2',
# '/tmp/HqWjtEkdYk/infile2'
# ]
# Script's stdout:
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - file 2
# Subtest: file 2 (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/cliqhCns_LQ
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliqhCns_LQ',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--json',
# '--a1',
# '/tmp/HqWjtEkdYk/infile1',
# '--a2',
# '/tmp/HqWjtEkdYk/infile2'
# ]
# Script's stdout: <[200,"OK","a1=foo\na2=[bar\n,baz]",{"func.args":{"-cmdline_src_a1":"file","-cmdline_src_a2":"file","-cmdline_srcfilenames_a1":["/tmp/HqWjtEkdYk/infile1"],"-cmdline_srcfilenames_a2":["/tmp/HqWjtEkdYk/infile2"],"a1":"foo","a2":["bar\n","baz"]},"stream":0}]
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
ok 3 - stdout_like
ok 4 - stdout_like
ok 5 - stdout_like
1..5
ok 5 - file 2 (special hint arguments passed)
# Subtest: file not found
# Generated CLI script at /tmp/HqWjtEkdYk/cliVtaJgUAc
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliVtaJgUAc',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--a1',
# '/tmp/HqWjtEkdYk/infile1/x'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 6 - file not found
# Subtest: file, missing required arg
# Generated CLI script at /tmp/HqWjtEkdYk/cliMqfIkoac
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliMqfIkoac',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file'
# }
# argv: [
# '--a2',
# '/tmp/HqWjtEkdYk/infile2'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 7 - file, missing required arg
1..7
ok 6 - cmdline_src (file)
# Subtest: cmdline_src (stdin)
ok 1 - dummy
# Subtest: stdin str
# Generated CLI script at /tmp/HqWjtEkdYk/cliQqlHjkP0
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliQqlHjkP0',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_str'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - stdin str
# Subtest: stdin str (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/cli1SmPdtJe
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli1SmPdtJe',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_str'
# }
# argv: [
# '--json'
# ]
# Script's stdout: <[200,"OK","a1=bar\nbaz",{"func.args":{"-cmdline_src_a1":"stdin","a1":"bar\nbaz"},"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - stdin str (special hint arguments passed)
# Subtest: stdin array
# Generated CLI script at /tmp/HqWjtEkdYk/clil57MfGDY
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clil57MfGDY',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_array'
# }
# argv: []
# Script's stdout:
# Script's stderr: line 2.
# >
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - stdin array
# Subtest: stdin + arg set to "-"
# Generated CLI script at /tmp/HqWjtEkdYk/cliyBxhcCwf
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliyBxhcCwf',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_str'
# }
# argv: [
# '--a1',
# '-'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - stdin + arg set to "-"
# Subtest: stdin + arg set to non "-"
# Generated CLI script at /tmp/HqWjtEkdYk/cli1Nwg3JWK
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli1Nwg3JWK',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_str'
# }
# argv: [
# '--a1',
# 'x'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 6 - stdin + arg set to non "-"
1..6
ok 7 - cmdline_src (stdin)
# Subtest: cmdline_src (stdin_line)
ok 1 - dummy
# Subtest: stdin_line + from stdin
# Generated CLI script at /tmp/HqWjtEkdYk/cliJzjoB3jp
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliJzjoB3jp',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_line'
# }
# argv: [
# '--a2',
# 'bar'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - stdin_line + from stdin
# Subtest: stdin_line + from stdin (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/cliTzT_cBCG
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliTzT_cBCG',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_line'
# }
# argv: [
# '--json',
# '--a2',
# 'bar'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - stdin_line + from stdin (special hint arguments passed)
# Subtest: stdin_line + from cmdline
# Generated CLI script at /tmp/HqWjtEkdYk/clis9EEE6o8
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clis9EEE6o8',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_line'
# }
# argv: [
# '--a2',
# 'bar',
# '--a1',
# 'qux'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - stdin_line + from cmdline
# Subtest: multi stdin_line
# Generated CLI script at /tmp/HqWjtEkdYk/clixiqpDX_0
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clixiqpDX_0',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_multi_stdin_line'
# }
# argv: [
# '--a3',
# 'baz'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - multi stdin_line
1..5
ok 8 - cmdline_src (stdin_line)
# Subtest: cmdline_src (stdin_or_file)
ok 1 - dummy
# Subtest: stdin_or_file file
# Generated CLI script at /tmp/HqWjtEkdYk/cliwMl4q13K
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliwMl4q13K',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - stdin_or_file file
# Subtest: stdin_or_file file (extra argument)
# Generated CLI script at /tmp/HqWjtEkdYk/cli9oCcftUD
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli9oCcftUD',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile1',
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - stdin_or_file file (extra argument)
# Subtest: stdin_or_file file (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/cli85CyOoxu
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli85CyOoxu',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str'
# }
# argv: [
# '--json',
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_file","-cmdline_srcfilenames_a1":["/tmp/HqWjtEkdYk/infile1"],"a1":"foo"},"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
ok 3 - stdout_like
1..3
ok 4 - stdin_or_file file (special hint arguments passed)
# Subtest: stdin_or_files file not found
# Generated CLI script at /tmp/HqWjtEkdYk/cliBLWAz9EP
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliBLWAz9EP',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile1/x'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 5 - stdin_or_files file not found
# Subtest: stdin_or_file stdin str
# Generated CLI script at /tmp/HqWjtEkdYk/cliSumyYQTz
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliSumyYQTz',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - stdin_or_file stdin str
# Subtest: stdin_or_file stdin str
# Generated CLI script at /tmp/HqWjtEkdYk/cliKOsBdaBL
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliKOsBdaBL',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_array'
# }
# argv: []
# Script's stdout:
# Script's stderr: line 2.
# >
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 7 - stdin_or_file stdin str
1..7
ok 9 - cmdline_src (stdin_or_file)
# Subtest: cmdline_src (stdin_or_files)
ok 1 - dummy
# Subtest: stdin_or_files file
# Generated CLI script at /tmp/HqWjtEkdYk/cliylIYZ29c
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliylIYZ29c',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_array'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile1',
# '/tmp/HqWjtEkdYk/infile2'
# ]
# Script's stdout:
# Script's stderr: line 3.
# >
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - stdin_or_files file
# Subtest: stdin_or_files file (special hint arguments passed)
# Generated CLI script at /tmp/HqWjtEkdYk/cliVjOAcY0U
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliVjOAcY0U',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str'
# }
# argv: [
# '--json',
# '/tmp/HqWjtEkdYk/infile1'
# ]
# Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_files","-cmdline_srcfilenames_a1":["/tmp/HqWjtEkdYk/infile1"],"a1":"foo"},"stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
ok 3 - stdout_like
1..3
ok 3 - stdin_or_files file (special hint arguments passed)
# Subtest: stdin_or_files file not found
# Generated CLI script at /tmp/HqWjtEkdYk/clikj3LMKln
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clikj3LMKln',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile1/x'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 4 - stdin_or_files file not found
# Subtest: stdin_or_files stdin str
# Generated CLI script at /tmp/HqWjtEkdYk/cliY5IgeuL4
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliY5IgeuL4',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - stdin_or_files stdin str
# Subtest: stdin_or_files stdin str
# Generated CLI script at /tmp/HqWjtEkdYk/cliNGrJ_579
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliNGrJ_579',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_array'
# }
# argv: []
# Script's stdout:
# Script's stderr: line 2.
# >
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - stdin_or_files stdin str
1..6
ok 10 - cmdline_src (stdin_or_files)
# Subtest: cmdline_src (stdin_or_args)
ok 1 - dummy
# Subtest: from arg
# Generated CLI script at /tmp/HqWjtEkdYk/cliMfKPfr7s
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliMfKPfr7s',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_args_array'
# }
# argv: [
# '--a1',
# 'x'
# ]
# Script's stdout:
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - from arg
# Subtest: from stdin
# Generated CLI script at /tmp/HqWjtEkdYk/clinx13mlpC
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clinx13mlpC',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_args_array'
# }
# argv: []
# Script's stdout:
# Script's stderr: line 2.
# >
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - from stdin
1..3
ok 11 - cmdline_src (stdin_or_args)
# Subtest: dry-run
ok 1 - dummy
# Subtest: dry-run (via env, 0)
# Generated CLI script at /tmp/HqWjtEkdYk/cliuXzhX2ah
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliuXzhX2ah',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/test_dry_run'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - dry-run (via env, 0)
# Subtest: dry-run (via env, 1)
# Generated CLI script at /tmp/HqWjtEkdYk/cliAq73lpeh
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliAq73lpeh',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/test_dry_run'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - dry-run (via env, 1)
# Subtest: dry-run (via cmdline opt)
# Generated CLI script at /tmp/HqWjtEkdYk/cli9f2QbRQ0
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli9f2QbRQ0',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/test_dry_run'
# }
# argv: [
# '--dry-run'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - dry-run (via cmdline opt)
1..4
ok 12 - dry-run
# Subtest: tx
ok 1 - dummy
# Subtest: dry_run (using tx) (w/o)
1..0 # SKIP Has one of the exclude_tag: tx
ok 2 # skip Has one of the exclude_tag: tx
# Subtest: dry_run (using tx) (w/)
1..0 # SKIP Has one of the exclude_tag: tx
ok 3 # skip Has one of the exclude_tag: tx
1..3
ok 13 - tx
# Subtest: streaming
ok 1 - dummy
# Subtest: stream input, simple type, chomp on
# Generated CLI script at /tmp/HqWjtEkdYk/cliZM4bqCsG
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliZM4bqCsG',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Stream/count_lines'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile-str'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - stream input, simple type, chomp on
# Subtest: stream input, simple type, chomp off
# Generated CLI script at /tmp/HqWjtEkdYk/cliE1G7PzjJ
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliE1G7PzjJ',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Stream/wc'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile-str'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - stream input, simple type, chomp off
# Subtest: stream input, json stream
# Generated CLI script at /tmp/HqWjtEkdYk/cli6FXubkGK
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli6FXubkGK',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Stream/wc_keys'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile-hash-json'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - stream input, json stream
# Subtest: stream input, simple type, word validation
1..0 # SKIP Has one of the exclude_tag: validate-streaming-input
ok 5 # skip Has one of the exclude_tag: validate-streaming-input
# Subtest: stream input, simple types, word validation, error
1..0 # SKIP Has one of the exclude_tag: validate-streaming-input
ok 6 # skip Has one of the exclude_tag: validate-streaming-input
# Subtest: stream input, simple types, word validation, error
1..0 # SKIP Has one of the exclude_tag: validate-streaming-input
ok 7 # skip Has one of the exclude_tag: validate-streaming-input
# Subtest: stream input, json stream, error
1..0 # SKIP Has one of the exclude_tag: validate-streaming-input
ok 8 # skip Has one of the exclude_tag: validate-streaming-input
# Subtest: stream result, simple types, word validation
1..0 # SKIP Has one of the exclude_tag: validate-streaming-result
ok 9 # skip Has one of the exclude_tag: validate-streaming-result
# Subtest: stream result, simple types, word validation, error
1..0 # SKIP Has one of the exclude_tag: validate-streaming-result
ok 10 # skip Has one of the exclude_tag: validate-streaming-result
# Subtest: stream result, json stream
# Generated CLI script at /tmp/HqWjtEkdYk/clik7YyyoGW
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clik7YyyoGW',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Stream/produce_hashes'
# }
# argv: [
# '-n',
# '3'
# ]
# Script's stdout: <{"num":1}
# {"num":2}
# {"num":3}
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 11 - stream result, json stream
# Subtest: stream input+result, simple type, float validation
# Generated CLI script at /tmp/HqWjtEkdYk/cli5k1WJEHQ
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli5k1WJEHQ',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Stream/square_nums'
# }
# argv: [
# '/tmp/HqWjtEkdYk/infile-int'
# ]
# Script's stdout: <1
# 9
# 25
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 12 - stream input+result, simple type, float validation
# Subtest: stream input+result, simple type, float validation, error
1..0 # SKIP Has one of the exclude_tag: validate-streaming-input
ok 13 # skip Has one of the exclude_tag: validate-streaming-input
1..13
ok 14 - streaming
# Subtest: result metadata
ok 1 - dummy
# Subtest: cmdline.exit_code
# Generated CLI script at /tmp/HqWjtEkdYk/cliAVc72B9u
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliAVc72B9u',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineResMeta/exit_code'
# }
# argv: []
# Script's stdout: <>
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 2 - cmdline.exit_code
# Subtest: cmdline.result
# Generated CLI script at /tmp/HqWjtEkdYk/cliTJy9AUz0
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliTJy9AUz0',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineResMeta/result'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - cmdline.result
# Subtest: cmdline.default_format
# Generated CLI script at /tmp/HqWjtEkdYk/cligY72ZDBb
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cligY72ZDBb',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineResMeta/default_format'
# }
# argv: []
# Script's stdout: <[200,"OK",null,{"cmdline.default_format":"json","stream":0}]
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - cmdline.default_format
# Subtest: cmdline.default_format (overriden by cmdline opt)
# Generated CLI script at /tmp/HqWjtEkdYk/cliHXfWUD3G
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliHXfWUD3G',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineResMeta/default_format'
# }
# argv: [
# '--format',
# 'text'
# ]
# Script's stdout: <>
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - cmdline.default_format (overriden by cmdline opt)
# Subtest: cmdline.skip_format
# Generated CLI script at /tmp/HqWjtEkdYk/cliaClJLCnv
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliaClJLCnv',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/CmdLineResMeta/skip_format'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - cmdline.skip_format
1..6
ok 15 - result metadata
# Subtest: completion
ok 1 - dummy
# Subtest: self-completion works
# Generated CLI script at /tmp/HqWjtEkdYk/cli1p9riax7
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli1p9riax7',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'url' => '/Perinci/Examples/Tiny/odd_even'
# }
# argv: []
# Script's stdout: <--number
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - answer
1..2
ok 2 - self-completion works
# Subtest: completion of subcommand name
# Generated CLI script at /tmp/HqWjtEkdYk/clifey64WAe
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clifey64WAe',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'sc1' => '/Perinci/Examples/Tiny/noop',
# 'sc2' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - answer
1..2
ok 3 - completion of subcommand name
# Subtest: completion of subcommand option
# Generated CLI script at /tmp/HqWjtEkdYk/cliFGn31Ezj
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliFGn31Ezj',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 0,
# 'subcommands' => {
# 'sc1' => '/Perinci/Examples/Tiny/noop',
# 'sc2' => '/Perinci/Examples/Tiny/odd_even'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: []
# Script's stdout: <--number
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - answer
1..2
ok 4 - completion of subcommand option
1..4
ok 16 - completion
# Subtest: env
ok 1 - dummy
# Subtest: env read
# Generated CLI script at /tmp/HqWjtEkdYk/cli18qVrj6I
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cli18qVrj6I',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 1,
# 'script_name' => 'sum-nums',
# 'url' => '/Perinci/Examples/Tiny/sum'
# }
# argv: [
# '3'
# ]
# Script's stdout: <6
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - env read
# Subtest: default env name prefixed by _ if script name starts with number
# Generated CLI script at /tmp/HqWjtEkdYk/clizbxY_nxd
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/clizbxY_nxd',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 1,
# 'script_name' => '0sum-nums',
# 'url' => '/Perinci/Examples/Tiny/sum'
# }
# argv: [
# '3'
# ]
# Script's stdout: <6
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - default env name prefixed by _ if script name starts with number
# Subtest: turned off via --no-env
# Generated CLI script at /tmp/HqWjtEkdYk/cliMGhQeces
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliMGhQeces',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 1,
# 'script_name' => 'sum-nums',
# 'url' => '/Perinci/Examples/Tiny/sum'
# }
# argv: [
# '--no-env',
# '3'
# ]
# Script's stdout: <3
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - turned off via --no-env
# Subtest: attr:env_name
# Generated CLI script at /tmp/HqWjtEkdYk/cli9IMvVoMK
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'env_name' => 'foo_opt',
# 'output_file' => '/tmp/HqWjtEkdYk/cli9IMvVoMK',
# 'overwrite' => 1,
# 'read_config' => 0,
# 'read_env' => 1,
# 'script_name' => 'sum-nums',
# 'url' => '/Perinci/Examples/Tiny/sum'
# }
# argv: [
# '3'
# ]
# Script's stdout: <18
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - attr:env_name
1..5
ok 17 - env
# Subtest: config file
ok 1 - dummy
# Subtest: attr:config_dirs
# Generated CLI script at /tmp/HqWjtEkdYk/cliUoSI9pdg
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliUoSI9pdg',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 2 - attr:config_dirs
# Subtest: attr:config_filename
# Generated CLI script at /tmp/HqWjtEkdYk/clib3CvsUkX
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'config_filename' => 'prog2.conf',
# 'output_file' => '/tmp/HqWjtEkdYk/clib3CvsUkX',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 3 - attr:config_filename
# Subtest: attr:config_filename (hash record)
# Generated CLI script at /tmp/HqWjtEkdYk/cliyFUS7HZD
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'config_filename' => [
# {
# 'filename' => 'prog4.conf',
# 'section' => 'prog'
# },
# 'prog2.conf'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliyFUS7HZD',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: []
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 4 - attr:config_filename (hash record)
# Subtest: attr:config_filename (hash record) + --config-profile
# Generated CLI script at /tmp/HqWjtEkdYk/cliYKMH78Qz
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'config_filename' => [
# {
# 'filename' => 'prog4.conf',
# 'section' => 'prog'
# },
# 'prog2.conf'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliYKMH78Qz',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--config-profile',
# 'profile1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 5 - attr:config_filename (hash record) + --config-profile
# Subtest: common option: --no-config
# Generated CLI script at /tmp/HqWjtEkdYk/cliKDoYCMPD
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliKDoYCMPD',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--no-config'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 6 - common option: --no-config
# Subtest: common option: --config-path
# Generated CLI script at /tmp/HqWjtEkdYk/cliwh08pfW1
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'output_file' => '/tmp/HqWjtEkdYk/cliwh08pfW1',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--config-path',
# '/tmp/HqWjtEkdYk/prog.conf'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 7 - common option: --config-path
# Subtest: common option: --config-profile
# Generated CLI script at /tmp/HqWjtEkdYk/clikLm3xdSE
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/clikLm3xdSE',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--config-profile=profile1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 8 - common option: --config-profile
# Subtest: unknown config profile -> error
# Generated CLI script at /tmp/HqWjtEkdYk/cliX9Wbk0Qh
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliX9Wbk0Qh',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--config-profile=foo'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
1..1
ok 9 - unknown config profile -> error
# Subtest: unknown config profile but does not read config -> ok
# Generated CLI script at /tmp/HqWjtEkdYk/cliEvXexaBY
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliEvXexaBY',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'foo',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: [
# '--config-profile=bar'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 10 - unknown config profile but does not read config -> ok
# Subtest: subcommand
# Generated CLI script at /tmp/HqWjtEkdYk/clikOaYS1tu
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/clikOaYS1tu',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'subcommands' => {
# 'subcommand1' => '/Perinci/Examples/Tiny/noop2'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# 'subcommand1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 11 - subcommand
# Subtest: subcommand + --config-profile
# Generated CLI script at /tmp/HqWjtEkdYk/cliSmyB0nhF
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliSmyB0nhF',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog',
# 'subcommands' => {
# 'subcommand1' => '/Perinci/Examples/Tiny/noop2'
# },
# 'url' => '/Perinci/Examples/Tiny/'
# }
# argv: [
# '--config-profile=profile1',
# 'subcommand1'
# ]
# Script's stdout:
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 12 - subcommand + --config-profile
# Subtest: array-ify if argument is array
# Generated CLI script at /tmp/HqWjtEkdYk/cli3Go1VCJr
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cli3Go1VCJr',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'sum',
# 'url' => '/Perinci/Examples/Tiny/sum'
# }
# argv: []
# Script's stdout: <0
# >
# Script's stderr:
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 13 - array-ify if argument is array
# Subtest: can also set common option
# Generated CLI script at /tmp/HqWjtEkdYk/cliT7tXT8IR
# gen_pericmd_script args: {
# 'cmdline' => 'Perinci::CmdLine::Lite',
# 'config_dirs' => [
# '/tmp/HqWjtEkdYk'
# ],
# 'output_file' => '/tmp/HqWjtEkdYk/cliT7tXT8IR',
# 'overwrite' => 1,
# 'read_config' => 1,
# 'read_env' => 0,
# 'script_name' => 'prog3',
# 'url' => '/Perinci/Examples/Tiny/noop2'
# }
# argv: []
# Script's stdout: <"a=101\nb=\nc=\nd=\ne="
# >
# Script's stderr: <>
ok 1 - exit_code
ok 2 - stdout_like
1..2
ok 14 - can also set common option
1..14
ok 18 - config file
# all tests successful, deleting tempdir /tmp/HqWjtEkdYk
1..18
ok
All tests successful.
Files=4, Tests=20, 16 wallclock secs ( 0.18 usr 0.02 sys + 11.49 cusr 2.23 csys = 13.92 CPU)
Result: PASS
PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
make test TEST_VERBOSE=1 -- OK
perlancar <perlancar@gmail.com>
A Rinci/Riap-based command-line application framework
>>> (cd /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Lite-1.77-V9LLUx && tar cvf - Perinci-CmdLine-Lite-1.77.ppd blib) | gzip -c >/Users/fly2000/cpanfly-5.20/var/REPO/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.77.tar.gz
Perinci-CmdLine-Lite-1.77.ppd
blib/
blib/lib/
blib/lib/auto/
blib/lib/auto/share/
blib/lib/auto/share/dist/
blib/lib/auto/share/dist/Perinci-CmdLine-Lite/
blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/
blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/description.txt
blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/synopsis.txt
blib/lib/Perinci/
blib/lib/Perinci/CmdLine/
blib/lib/Perinci/CmdLine/Base.pm
blib/lib/Perinci/CmdLine/Lite.pm
blib/man3/
blib/man3/Perinci::CmdLine::Base.3
blib/man3/Perinci::CmdLine::Lite.3
Finished 2017-07-22T10:07:32