PATH=/usr/bin:/bin:/Users/fly2000/cpanfly-5.20/var/megalib/bin Start 2016-12-30T10:11:59 ActivePerl-2000 CPAN-2.10 Reading '/Users/fly2000/cpanfly-5.20/var/cpan/Metadata' Database was generated on Fri, 30 Dec 2016 06:41:03 GMT Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/CHECKSUMS Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz ok Perinci-CmdLine-Lite-1.68/ Perinci-CmdLine-Lite-1.68/README Perinci-CmdLine-Lite-1.68/lib/ Perinci-CmdLine-Lite-1.68/lib/Perinci/ Perinci-CmdLine-Lite-1.68/lib/Perinci/CmdLine/ Perinci-CmdLine-Lite-1.68/lib/Perinci/CmdLine/Lite.pm Perinci-CmdLine-Lite-1.68/lib/Perinci/CmdLine/Base.pm Perinci-CmdLine-Lite-1.68/lib/Perinci/CmdLine/Util/ Perinci-CmdLine-Lite-1.68/lib/Perinci/CmdLine/Util/Config.pm Perinci-CmdLine-Lite-1.68/Makefile.PL Perinci-CmdLine-Lite-1.68/Changes.new Perinci-CmdLine-Lite-1.68/share/ Perinci-CmdLine-Lite-1.68/share/templates/ Perinci-CmdLine-Lite-1.68/share/templates/description.txt Perinci-CmdLine-Lite-1.68/share/templates/synopsis.txt Perinci-CmdLine-Lite-1.68/Changes Perinci-CmdLine-Lite-1.68/dist.ini Perinci-CmdLine-Lite-1.68/LICENSE Perinci-CmdLine-Lite-1.68/t/ Perinci-CmdLine-Lite-1.68/t/00-compile.t Perinci-CmdLine-Lite-1.68/t/suite.t Perinci-CmdLine-Lite-1.68/t/release-rinci.t Perinci-CmdLine-Lite-1.68/t/author-pod-syntax.t Perinci-CmdLine-Lite-1.68/t/author-pod-coverage.t Perinci-CmdLine-Lite-1.68/weaver.ini Perinci-CmdLine-Lite-1.68/MANIFEST Perinci-CmdLine-Lite-1.68/META.json Perinci-CmdLine-Lite-1.68/META.yml Perinci-CmdLine-Lite-1.68/devscripts/ Perinci-CmdLine-Lite-1.68/devscripts/bench-startup Configuring P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz with Makefile.PL >>> /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL Warning: prerequisite Perinci::Result::Format::Lite 0.22 not found. We have 0.21. 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.68.tar.gz /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz ---- Unsatisfied dependencies detected during ---- ---- PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz ---- Progress::Any::Output::TermProgressBarColor [requires] Perinci::Result::Format::Lite [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.22.tar.gz ok Progress-Any-Output-TermProgressBarColor-0.22/ Progress-Any-Output-TermProgressBarColor-0.22/README Progress-Any-Output-TermProgressBarColor-0.22/lib/ Progress-Any-Output-TermProgressBarColor-0.22/lib/Progress/ Progress-Any-Output-TermProgressBarColor-0.22/lib/Progress/Any/ Progress-Any-Output-TermProgressBarColor-0.22/lib/Progress/Any/Output/ Progress-Any-Output-TermProgressBarColor-0.22/lib/Progress/Any/Output/TermProgressBarColor.pm Progress-Any-Output-TermProgressBarColor-0.22/Makefile.PL Progress-Any-Output-TermProgressBarColor-0.22/Changes Progress-Any-Output-TermProgressBarColor-0.22/dist.ini Progress-Any-Output-TermProgressBarColor-0.22/LICENSE Progress-Any-Output-TermProgressBarColor-0.22/t/ Progress-Any-Output-TermProgressBarColor-0.22/t/00-compile.t Progress-Any-Output-TermProgressBarColor-0.22/t/01-basic.t Progress-Any-Output-TermProgressBarColor-0.22/t/author-pod-syntax.t Progress-Any-Output-TermProgressBarColor-0.22/t/author-pod-coverage.t Progress-Any-Output-TermProgressBarColor-0.22/weaver.ini Progress-Any-Output-TermProgressBarColor-0.22/MANIFEST Progress-Any-Output-TermProgressBarColor-0.22/META.json Progress-Any-Output-TermProgressBarColor-0.22/META.yml Configuring P/PE/PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.22.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.22.tar.gz /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK Running make for P/PE/PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.22.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.22.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 ' # 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 ' # 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 ' # 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, 1 wallclock secs ( 0.03 usr 0.01 sys + 0.27 cusr 0.05 csys = 0.36 CPU) Result: FAIL Failed 1/4 test programs. 3/4 subtests failed. make: *** [test_dynamic] Error 255 PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.22.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.22.tar.gz Running test for module 'Perinci::Result::Format::Lite' Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz ok Perinci-Result-Format-Lite-0.22/ Perinci-Result-Format-Lite-0.22/README Perinci-Result-Format-Lite-0.22/lib/ Perinci-Result-Format-Lite-0.22/lib/Perinci/ Perinci-Result-Format-Lite-0.22/lib/Perinci/Result/ Perinci-Result-Format-Lite-0.22/lib/Perinci/Result/Format/ Perinci-Result-Format-Lite-0.22/lib/Perinci/Result/Format/Lite.pm Perinci-Result-Format-Lite-0.22/Makefile.PL Perinci-Result-Format-Lite-0.22/Changes Perinci-Result-Format-Lite-0.22/dist.ini Perinci-Result-Format-Lite-0.22/LICENSE Perinci-Result-Format-Lite-0.22/t/ Perinci-Result-Format-Lite-0.22/t/00-compile.t Perinci-Result-Format-Lite-0.22/t/01-basics.t Perinci-Result-Format-Lite-0.22/t/author-pod-syntax.t Perinci-Result-Format-Lite-0.22/t/author-pod-coverage.t Perinci-Result-Format-Lite-0.22/weaver.ini Perinci-Result-Format-Lite-0.22/MANIFEST Perinci-Result-Format-Lite-0.22/META.json Perinci-Result-Format-Lite-0.22/META.yml Configuring P/PE/PERLANCAR/Perinci-Result-Format-Lite-0.22.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::Result::Format::Lite Writing MYMETA.yml and MYMETA.json PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK Running make for P/PE/PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz >>> make cp lib/Perinci/Result/Format/Lite.pm blib/lib/Perinci/Result/Format/Lite.pm Manifying 1 pod document PERLANCAR/Perinci-Result-Format-Lite-0.22.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/Result/Format/Lite.pm loaded ok ok Unknown format 'foo', fallback to json-pretty at /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f/blib/lib/Perinci/Result/Format/Lite.pm line 432. Subroutine FatPacked::4305364840::INC redefined at /Users/fly2000/cpanfly-5.20/var/megalib/Data/Clean.pm line 115. t/01-basics.t ............ ok 1 - unknown format -> fallback to json-pretty # Subtest: format=text-simple ok 1 ok 2 - newline appended ok 3 - newline already exists so not added ok 4 - error 1..4 ok 2 - format=text-simple # Subtest: format=text-pretty ok 1 - hash 1..1 ok 3 - format=text-pretty # Subtest: format=json-pretty ok 1 1..1 ok 4 - format=json-pretty # Subtest: meta:table.fields ok 1 1..1 ok 5 - meta:table.fields # Subtest: meta:table.hide_unknown_fields ok 1 1..1 ok 6 - meta:table.hide_unknown_fields # Subtest: meta:table.field_units ok 1 1..1 ok 7 - meta:table.field_units # Subtest: meta:table.field_formats ok 1 1..1 ok 8 - meta:table.field_formats # Subtest: meta:table.field_aligns ok 1 1..1 ok 9 - meta:table.field_aligns 1..9 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 All tests successful. Files=4, Tests=10, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.13 cusr 0.04 csys = 0.22 CPU) Result: PASS PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz make test TEST_VERBOSE=1 -- OK perlancar <perlancar@gmail.com> Format enveloped result >>> (cd /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f && tar cvf - Perinci-Result-Format-Lite-0.22.ppd blib) | gzip -c >/Users/fly2000/cpanfly-5.20/var/REPO/P/PE/PERLANCAR/Perinci-Result-Format-Lite-0.22.tar.gz Perinci-Result-Format-Lite-0.22.ppd blib/ blib/lib/ blib/lib/Perinci/ blib/lib/Perinci/Result/ blib/lib/Perinci/Result/Format/ blib/lib/Perinci/Result/Format/Lite.pm blib/man3/ blib/man3/Perinci::Result::Format::Lite.3 PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz Has already been unwrapped into directory /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Lite-1.68-Gd8nZZ PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz Has already been prepared Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f/blib/lib to PERL5LIB for 'make' Warning: Prerequisite 'Progress::Any::Output::TermProgressBarColor => 0.17' for 'PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz' failed when processing 'PERLANCAR/Progress-Any-Output-TermProgressBarColor-0.22.tar.gz' with 'make_test => NO'. Continuing, but chances to succeed are limited. >>> make cp share/templates/description.txt blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/description.txt cp share/templates/synopsis.txt blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/synopsis.txt cp lib/Perinci/CmdLine/Lite.pm blib/lib/Perinci/CmdLine/Lite.pm cp lib/Perinci/CmdLine/Util/Config.pm blib/lib/Perinci/CmdLine/Util/Config.pm cp lib/Perinci/CmdLine/Base.pm blib/lib/Perinci/CmdLine/Base.pm Manifying 3 pod documents PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz make -- OK Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-Result-Format-Lite-0.22-fS7x1f/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..3 ok 1 - Perinci/CmdLine/Base.pm loaded ok ok 2 - Perinci/CmdLine/Lite.pm loaded ok ok 3 - Perinci/CmdLine/Util/Config.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 t/suite.t ................ # Subtest: help action ok 1 - dummy # Subtest: --help # Generated CLI script at /tmp/6KSF2bj9RZ/cli123L2Tw_ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli123L2Tw_', # '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/6KSF2bj9RZ/cliXG3yAgsT # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliXG3yAgsT', # '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/6KSF2bj9RZ/cli2UiXGsOa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli2UiXGsOa', # '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/6KSF2bj9RZ/cli0cAdWs_w # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli0cAdWs_w', # '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/6KSF2bj9RZ/cli8ULDYmD9 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli8ULDYmD9', # '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/6KSF2bj9RZ/cliPbdGp72s # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliPbdGp72s', # '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/6KSF2bj9RZ/cliqsn5gpjU # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliqsn5gpjU', # '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/6KSF2bj9RZ/cli6EfwJ1EA # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli6EfwJ1EA', # '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/6KSF2bj9RZ/climryTsygZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/climryTsygZ', # '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/6KSF2bj9RZ/cli5kKBKXOZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/6KSF2bj9RZ/cli5kKBKXOZ', # '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/6KSF2bj9RZ/cliAel0xBCa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'odd_even', # 'output_file' => '/tmp/6KSF2bj9RZ/cliAel0xBCa', # '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/6KSF2bj9RZ/clit5BBVSu2 # 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/6KSF2bj9RZ/clit5BBVSu2', # '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/6KSF2bj9RZ/cliDgjzQfsz # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliDgjzQfsz', # '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/6KSF2bj9RZ/cliq1LgI1Xk # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliq1LgI1Xk', # '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/6KSF2bj9RZ/cli2CXjqWG1 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli2CXjqWG1', # '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/6KSF2bj9RZ/cliC5d1e0ia # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliC5d1e0ia', # '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/6KSF2bj9RZ/cliwZmrBPoI # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliwZmrBPoI', # '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/6KSF2bj9RZ/cliYZrxGgrM # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliYZrxGgrM', # '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/6KSF2bj9RZ/cliFaHo7FiZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/6KSF2bj9RZ/cliFaHo7FiZ', # '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/6KSF2bj9RZ/cli_9JKsyEP # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli_9JKsyEP', # '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/6KSF2bj9RZ/clisgSG9_LQ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clisgSG9_LQ', # '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/6KSF2bj9RZ/cliGzKiFyPL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliGzKiFyPL', # '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/6KSF2bj9RZ/cliCf7LJOHq # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliCf7LJOHq', # '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/6KSF2bj9RZ/cliXP5Z8urq # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliXP5Z8urq', # '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/6KSF2bj9RZ/cliDefUtbnr # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliDefUtbnr', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/clizODd8oW0 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clizODd8oW0', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/6KSF2bj9RZ/infile1' # ] # Script's stdout: <[200,"OK","a1=foo\na2=[]",{"func.args":{"-cmdline_src_a1":"file","-cmdline_srcfilenames_a1":["/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli5zugzpkU # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli5zugzpkU', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/6KSF2bj9RZ/infile1', # '--a2', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cliRP8QNabZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliRP8QNabZ', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/6KSF2bj9RZ/infile1', # '--a2', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/infile1"],"-cmdline_srcfilenames_a2":["/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/clizWaLD9xy # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clizWaLD9xy', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/clivfTMRSO4 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clivfTMRSO4', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a2', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cliZjYrztZe # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliZjYrztZe', # '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/6KSF2bj9RZ/clipPqTblLT # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clipPqTblLT', # '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: line 1. # > 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/6KSF2bj9RZ/cli6z8qhf7S # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli6z8qhf7S', # '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/6KSF2bj9RZ/clil6JzyTUE # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clil6JzyTUE', # '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/6KSF2bj9RZ/cliyT7Q_cyW # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliyT7Q_cyW', # '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/6KSF2bj9RZ/cliDXFGcKvi # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliDXFGcKvi', # '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/6KSF2bj9RZ/cliRWSG4wiM # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliRWSG4wiM', # '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: line 1. # > 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/6KSF2bj9RZ/clid9yql81B # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clid9yql81B', # '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/6KSF2bj9RZ/clidwT43Kdw # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clidwT43Kdw', # '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/6KSF2bj9RZ/cliOEYNrQZ5 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliOEYNrQZ5', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cliC4JWxsvD # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliC4JWxsvD', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/6KSF2bj9RZ/infile1', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cliyhauzB17 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliyhauzB17', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '--json', # '/tmp/6KSF2bj9RZ/infile1' # ] # Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_file","-cmdline_srcfilenames_a1":["/tmp/6KSF2bj9RZ/infile1"],"a1":"foo"},"stream":0}] # > # Script's stderr: line 1. # > 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/6KSF2bj9RZ/cli4TuYAipG # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli4TuYAipG', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli8Y9syiMZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli8Y9syiMZ', # '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/6KSF2bj9RZ/cliIQalGKgt # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliIQalGKgt', # '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/6KSF2bj9RZ/clivOCU60fj # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clivOCU60fj', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_array' # } # argv: [ # '/tmp/6KSF2bj9RZ/infile1', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli6jAUAUBH # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli6jAUAUBH', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '--json', # '/tmp/6KSF2bj9RZ/infile1' # ] # Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_files","-cmdline_srcfilenames_a1":["/tmp/6KSF2bj9RZ/infile1"],"a1":"foo"},"stream":0}] # > # Script's stderr: line 1. # > 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/6KSF2bj9RZ/cliyYugDYxC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliyYugDYxC', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli6JPLlsyT # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli6JPLlsyT', # '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/6KSF2bj9RZ/cli2SlSxu9p # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli2SlSxu9p', # '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/6KSF2bj9RZ/cliryWQUIqE # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliryWQUIqE', # '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/6KSF2bj9RZ/cliEhvYviDF # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliEhvYviDF', # '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/6KSF2bj9RZ/cli70kERuOr # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli70kERuOr', # '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/6KSF2bj9RZ/cli_aBtI6jN # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli_aBtI6jN', # '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/6KSF2bj9RZ/cliwV6f3R_0 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliwV6f3R_0', # '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/6KSF2bj9RZ/clijNIkSaOO # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clijNIkSaOO', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/count_lines' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cliCjNU_0sP # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliCjNU_0sP', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/clifKg6yfTv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clifKg6yfTv', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc_keys' # } # argv: [ # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli0pTXRd3R # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli0pTXRd3R', # '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/6KSF2bj9RZ/clitJeJX50X # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clitJeJX50X', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/square_nums' # } # argv: [ # '/tmp/6KSF2bj9RZ/infile-int' # ] # Script's stdout: <1 # 9 # 25 # > # Script's stderr: line 1. # > 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/6KSF2bj9RZ/cliWiMG0SqI # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliWiMG0SqI', # '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/6KSF2bj9RZ/cli7cuEeC6p # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli7cuEeC6p', # '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/6KSF2bj9RZ/clivvRO4eho # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clivvRO4eho', # '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/6KSF2bj9RZ/clicDaHv9_X # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clicDaHv9_X', # '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/6KSF2bj9RZ/cli5lz0n0Rw # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli5lz0n0Rw', # '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/6KSF2bj9RZ/clivdRAMVNd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clivdRAMVNd', # '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/6KSF2bj9RZ/cliG_u0jAoN # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliG_u0jAoN', # '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/6KSF2bj9RZ/cliY_nIJlvL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliY_nIJlvL', # '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/6KSF2bj9RZ/cli7k65TrM2 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cli7k65TrM2', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 1, # 'script_name' => 'sum-nums', # 'url' => '/Perinci/Examples/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: turned off via --no-env # Generated CLI script at /tmp/6KSF2bj9RZ/clihvAzNusI # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/clihvAzNusI', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 1, # 'script_name' => 'sum-nums', # 'url' => '/Perinci/Examples/sum' # } # argv: [ # '--no-env', # '3' # ] # Script's stdout: <3 # > # Script's stderr: ok 1 - exit_code ok 2 - stdout_like 1..2 ok 3 - turned off via --no-env # Subtest: attr:env_name # Generated CLI script at /tmp/6KSF2bj9RZ/cliDS9ZLFZ1 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'env_name' => 'foo_opt', # 'output_file' => '/tmp/6KSF2bj9RZ/cliDS9ZLFZ1', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 1, # 'script_name' => 'sum-nums', # 'url' => '/Perinci/Examples/sum' # } # argv: [ # '3' # ] # Script's stdout: <18 # > # Script's stderr: ok 1 - exit_code ok 2 - stdout_like 1..2 ok 4 - attr:env_name 1..4 ok 17 - env # Subtest: config file ok 1 - dummy # Subtest: attr:config_dirs # Generated CLI script at /tmp/6KSF2bj9RZ/clixMD8vgoR # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/clixMD8vgoR', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/clisR0XcqRn # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'config_filename' => 'prog2.conf', # 'output_file' => '/tmp/6KSF2bj9RZ/clisR0XcqRn', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cliZurjweBa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'config_filename' => [ # { # 'filename' => 'prog4.conf', # 'section' => 'prog' # }, # 'prog2.conf' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cliZurjweBa', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/clix15N08mC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'config_filename' => [ # { # 'filename' => 'prog4.conf', # 'section' => 'prog' # }, # 'prog2.conf' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/clix15N08mC', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cli5jri5fSO # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cli5jri5fSO', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cliTIhTny5o # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/6KSF2bj9RZ/cliTIhTny5o', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/noop2' # } # argv: [ # '--config-path', # '/tmp/6KSF2bj9RZ/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/6KSF2bj9RZ/cli1SemSvLH # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cli1SemSvLH', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cliLG0x2frl # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cliLG0x2frl', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cliCYX8QKVj # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cliCYX8QKVj', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'foo', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cli0ihK2uTv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cli0ihK2uTv', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'subcommands' => [ # 'subcommand1:/Perinci/Examples/noop2' # ], # 'url' => '/Perinci/Examples/' # } # 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/6KSF2bj9RZ/clio5yUPvve # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/clio5yUPvve', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'subcommands' => [ # 'subcommand1:/Perinci/Examples/noop2' # ], # 'url' => '/Perinci/Examples/' # } # 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/6KSF2bj9RZ/cliIOCif67_ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cliIOCif67_', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'sum', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ/cli5_OsNdO9 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/6KSF2bj9RZ' # ], # 'output_file' => '/tmp/6KSF2bj9RZ/cli5_OsNdO9', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog3', # 'url' => '/Perinci/Examples/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/6KSF2bj9RZ 1..18 ok All tests successful. Files=5, Tests=21, 16 wallclock secs ( 0.18 usr 0.02 sys + 11.62 cusr 2.21 csys = 14.03 CPU) Result: PASS PERLANCAR/Perinci-CmdLine-Lite-1.68.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.68-Gd8nZZ && tar cvf - Perinci-CmdLine-Lite-1.68.ppd blib) | gzip -c >/Users/fly2000/cpanfly-5.20/var/REPO/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.68.tar.gz Perinci-CmdLine-Lite-1.68.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/lib/Perinci/CmdLine/Util/ blib/lib/Perinci/CmdLine/Util/Config.pm blib/man3/ blib/man3/Perinci::CmdLine::Base.3 blib/man3/Perinci::CmdLine::Lite.3 blib/man3/Perinci::CmdLine::Util::Config.3 Finished 2016-12-30T10:12:29