PATH=/usr/bin:/bin:/Users/fly2000/cpanfly-5.20/var/megalib/bin Start 2017-01-11T10:11:41 ActivePerl-2000 CPAN-2.10 Reading '/Users/fly2000/cpanfly-5.20/var/cpan/Metadata' Database was generated on Wed, 11 Jan 2017 06:53:58 GMT Fetching with LWP: http://ppm.activestate.com/CPAN/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz ok Perinci-CmdLine-Lite-1.70/ Perinci-CmdLine-Lite-1.70/README Perinci-CmdLine-Lite-1.70/lib/ Perinci-CmdLine-Lite-1.70/lib/Perinci/ Perinci-CmdLine-Lite-1.70/lib/Perinci/CmdLine/ Perinci-CmdLine-Lite-1.70/lib/Perinci/CmdLine/Lite.pm Perinci-CmdLine-Lite-1.70/lib/Perinci/CmdLine/Base.pm Perinci-CmdLine-Lite-1.70/Makefile.PL Perinci-CmdLine-Lite-1.70/share/ Perinci-CmdLine-Lite-1.70/share/templates/ Perinci-CmdLine-Lite-1.70/share/templates/description.txt Perinci-CmdLine-Lite-1.70/share/templates/synopsis.txt Perinci-CmdLine-Lite-1.70/Changes Perinci-CmdLine-Lite-1.70/dist.ini Perinci-CmdLine-Lite-1.70/LICENSE Perinci-CmdLine-Lite-1.70/t/ Perinci-CmdLine-Lite-1.70/t/00-compile.t Perinci-CmdLine-Lite-1.70/t/suite.t Perinci-CmdLine-Lite-1.70/t/author-pod-syntax.t Perinci-CmdLine-Lite-1.70/t/author-pod-coverage.t Perinci-CmdLine-Lite-1.70/weaver.ini Perinci-CmdLine-Lite-1.70/MANIFEST Perinci-CmdLine-Lite-1.70/META.json Perinci-CmdLine-Lite-1.70/META.yml Perinci-CmdLine-Lite-1.70/devscripts/ Perinci-CmdLine-Lite-1.70/devscripts/bench-startup Configuring P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz with Makefile.PL >>> /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL Warning: prerequisite Perinci::CmdLine::Util::Config 1.69 not found. 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.70.tar.gz /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz ---- Unsatisfied dependencies detected during ---- ---- PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz ---- Progress::Any::Output::TermProgressBarColor [requires] Perinci::CmdLine::Util::Config [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.04 usr 0.01 sys + 0.27 cusr 0.05 csys = 0.37 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::CmdLine::Util::Config' Checksum for /Users/fly2000/cpanfly-5.20/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Util-Config-1.69.tar.gz ok Perinci-CmdLine-Util-Config-1.69/ Perinci-CmdLine-Util-Config-1.69/README Perinci-CmdLine-Util-Config-1.69/lib/ Perinci-CmdLine-Util-Config-1.69/lib/Perinci/ Perinci-CmdLine-Util-Config-1.69/lib/Perinci/CmdLine/ Perinci-CmdLine-Util-Config-1.69/lib/Perinci/CmdLine/Util/ Perinci-CmdLine-Util-Config-1.69/lib/Perinci/CmdLine/Util/Config.pm Perinci-CmdLine-Util-Config-1.69/Makefile.PL Perinci-CmdLine-Util-Config-1.69/Changes Perinci-CmdLine-Util-Config-1.69/dist.ini Perinci-CmdLine-Util-Config-1.69/LICENSE Perinci-CmdLine-Util-Config-1.69/t/ Perinci-CmdLine-Util-Config-1.69/t/00-compile.t Perinci-CmdLine-Util-Config-1.69/t/release-rinci.t Perinci-CmdLine-Util-Config-1.69/t/author-pod-syntax.t Perinci-CmdLine-Util-Config-1.69/t/author-pod-coverage.t Perinci-CmdLine-Util-Config-1.69/weaver.ini Perinci-CmdLine-Util-Config-1.69/MANIFEST Perinci-CmdLine-Util-Config-1.69/META.json Perinci-CmdLine-Util-Config-1.69/META.yml Configuring P/PE/PERLANCAR/Perinci-CmdLine-Util-Config-1.69.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::Util::Config Writing MYMETA.yml and MYMETA.json PERLANCAR/Perinci-CmdLine-Util-Config-1.69.tar.gz /Users/fly2000/ap2000-298465/bin/perl-dynamic Makefile.PL -- OK Running make for P/PE/PERLANCAR/Perinci-CmdLine-Util-Config-1.69.tar.gz >>> make cp lib/Perinci/CmdLine/Util/Config.pm blib/lib/Perinci/CmdLine/Util/Config.pm Manifying 1 pod document PERLANCAR/Perinci-CmdLine-Util-Config-1.69.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/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 All tests successful. Files=4, Tests=1, 1 wallclock secs ( 0.04 usr 0.01 sys + 0.07 cusr 0.03 csys = 0.15 CPU) Result: PASS PERLANCAR/Perinci-CmdLine-Util-Config-1.69.tar.gz make test TEST_VERBOSE=1 -- OK PPD for Perinci-CmdLine-Util-Config-1.69 already made PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz Has already been unwrapped into directory /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Lite-1.70-5JAcd9 PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz Has already been prepared Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Util-Config-1.69-Q5DJRP/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Util-Config-1.69-Q5DJRP/blib/lib to PERL5LIB for 'make' Warning: Prerequisite 'Progress::Any::Output::TermProgressBarColor => 0.17' for 'PERLANCAR/Perinci-CmdLine-Lite-1.70.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/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.70.tar.gz make -- OK Prepending /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Util-Config-1.69-Q5DJRP/blib/arch /Users/fly2000/cpanfly-5.20/var/tmp/cpan_build/Perinci-CmdLine-Util-Config-1.69-Q5DJRP/blib/lib to PERL5LIB for 'test' Running make test >>> make test TEST_VERBOSE=1 Skip blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/synopsis.txt (unchanged) Skip blib/lib/auto/share/dist/Perinci-CmdLine-Lite/templates/description.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/RxkBHuye7G/clihOP50KDB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clihOP50KDB', # '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/RxkBHuye7G/clitr_4z5C9 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clitr_4z5C9', # '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/RxkBHuye7G/cli6xAir0h0 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli6xAir0h0', # '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/RxkBHuye7G/cli4Wuc4x0k # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli4Wuc4x0k', # '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/RxkBHuye7G/cliHqJoWehv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliHqJoWehv', # '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/RxkBHuye7G/cliJqWzfzzv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliJqWzfzzv', # '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/RxkBHuye7G/cliLwR8V79p # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliLwR8V79p', # '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/RxkBHuye7G/cliOTA_hpYT # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliOTA_hpYT', # '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/RxkBHuye7G/clivds9HAgl # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clivds9HAgl', # '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/RxkBHuye7G/cliZJwP5ydt # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/RxkBHuye7G/cliZJwP5ydt', # '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/RxkBHuye7G/cliNDCIHvOk # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'odd_even', # 'output_file' => '/tmp/RxkBHuye7G/cliNDCIHvOk', # '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/RxkBHuye7G/cli6j2GksNP # 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/RxkBHuye7G/cli6j2GksNP', # '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/RxkBHuye7G/clivrqFhobS # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clivrqFhobS', # '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/RxkBHuye7G/cliGSmHsSUu # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliGSmHsSUu', # '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/RxkBHuye7G/cliLxAvX18Z # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliLxAvX18Z', # '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/RxkBHuye7G/cliNIMcLwCq # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliNIMcLwCq', # '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/RxkBHuye7G/cliz83Uupx7 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliz83Uupx7', # '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/RxkBHuye7G/cliln1omQRa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliln1omQRa', # '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/RxkBHuye7G/cliMNyknBxm # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/RxkBHuye7G/cliMNyknBxm', # '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/RxkBHuye7G/clizf82SvOS # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clizf82SvOS', # '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/RxkBHuye7G/cliQy7CDJsh # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliQy7CDJsh', # '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/RxkBHuye7G/cliofdcDagS # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliofdcDagS', # '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/RxkBHuye7G/cliHzt2WPET # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliHzt2WPET', # '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/RxkBHuye7G/cliTyWq1Nnd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliTyWq1Nnd', # '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/RxkBHuye7G/cli1uymqbZm # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli1uymqbZm', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliIPGBgXLK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliIPGBgXLK', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/RxkBHuye7G/infile1' # ] # Script's stdout: <[200,"OK","a1=foo\na2=[]",{"func.args":{"-cmdline_src_a1":"file","-cmdline_srcfilenames_a1":["/tmp/RxkBHuye7G/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/RxkBHuye7G/cli0OhCRn1t # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli0OhCRn1t', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/RxkBHuye7G/infile1', # '--a2', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliv_lXCSd5 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliv_lXCSd5', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/RxkBHuye7G/infile1', # '--a2', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/infile1"],"-cmdline_srcfilenames_a2":["/tmp/RxkBHuye7G/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/RxkBHuye7G/cliYGW4E4Ri # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliYGW4E4Ri', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliTZj1TjCR # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliTZj1TjCR', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a2', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cli4JoIiVfY # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli4JoIiVfY', # '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/RxkBHuye7G/cliSMzSKnfZ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliSMzSKnfZ', # '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/RxkBHuye7G/clivR45v668 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clivR45v668', # '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/RxkBHuye7G/cliJUpqLEvs # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliJUpqLEvs', # '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/RxkBHuye7G/clioGXrgh35 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clioGXrgh35', # '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/RxkBHuye7G/clix1brnaGB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clix1brnaGB', # '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/RxkBHuye7G/cli98p4kLut # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli98p4kLut', # '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/RxkBHuye7G/cliO_1iVOZe # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliO_1iVOZe', # '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/RxkBHuye7G/cliqJgQdMBc # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliqJgQdMBc', # '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/RxkBHuye7G/clihItumhxU # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clihItumhxU', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliknLid5iK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliknLid5iK', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/RxkBHuye7G/infile1', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/clijQQASNpB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clijQQASNpB', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '--json', # '/tmp/RxkBHuye7G/infile1' # ] # Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_file","-cmdline_srcfilenames_a1":["/tmp/RxkBHuye7G/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/RxkBHuye7G/cli5f8cwEMp # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli5f8cwEMp', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliCR4FrwfF # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliCR4FrwfF', # '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/RxkBHuye7G/cli_Lv2yyr4 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli_Lv2yyr4', # '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/RxkBHuye7G/cliLLg6AT7U # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliLLg6AT7U', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_array' # } # argv: [ # '/tmp/RxkBHuye7G/infile1', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/clizDwqKWtd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clizDwqKWtd', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '--json', # '/tmp/RxkBHuye7G/infile1' # ] # Script's stdout: <[200,"OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_files","-cmdline_srcfilenames_a1":["/tmp/RxkBHuye7G/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/RxkBHuye7G/clix9TMQKi_ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clix9TMQKi_', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliSvs7_iJq # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliSvs7_iJq', # '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/RxkBHuye7G/clily2mFJZT # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clily2mFJZT', # '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/RxkBHuye7G/cliUvJHUpGR # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliUvJHUpGR', # '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/RxkBHuye7G/cliKtJN5dH5 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliKtJN5dH5', # '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/RxkBHuye7G/cli4lya5TR9 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli4lya5TR9', # '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/RxkBHuye7G/cli1FQkJs_A # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli1FQkJs_A', # '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/RxkBHuye7G/cli9D9wpnzC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli9D9wpnzC', # '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/RxkBHuye7G/cliSabxklbH # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliSabxklbH', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/count_lines' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/clivOW8eqYu # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clivOW8eqYu', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/clitTldJREC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clitTldJREC', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc_keys' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliqBHiYxeo # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliqBHiYxeo', # '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/RxkBHuye7G/cliCsRSnWsB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliCsRSnWsB', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/square_nums' # } # argv: [ # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliQsmQ9gBl # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliQsmQ9gBl', # '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/RxkBHuye7G/cliSh3uCFYr # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliSh3uCFYr', # '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/RxkBHuye7G/climndUtMwQ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/climndUtMwQ', # '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/RxkBHuye7G/cliBpgArFZ2 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliBpgArFZ2', # '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/RxkBHuye7G/cli6DwQqfJX # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli6DwQqfJX', # '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/RxkBHuye7G/clixizdSAba # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clixizdSAba', # '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/RxkBHuye7G/cli6toRgMgE # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cli6toRgMgE', # '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/RxkBHuye7G/clirJtwhhnB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clirJtwhhnB', # '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/RxkBHuye7G/clikxPwGR3I # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/clikxPwGR3I', # '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/RxkBHuye7G/cliu48413LB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliu48413LB', # '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/RxkBHuye7G/clihEVE1_sw # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'env_name' => 'foo_opt', # 'output_file' => '/tmp/RxkBHuye7G/clihEVE1_sw', # '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/RxkBHuye7G/cliWqeemsqO # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cliWqeemsqO', # '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/RxkBHuye7G/cliWynMofQY # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'config_filename' => 'prog2.conf', # 'output_file' => '/tmp/RxkBHuye7G/cliWynMofQY', # '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/RxkBHuye7G/cliYdiKy6TD # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'config_filename' => [ # { # 'filename' => 'prog4.conf', # 'section' => 'prog' # }, # 'prog2.conf' # ], # 'output_file' => '/tmp/RxkBHuye7G/cliYdiKy6TD', # '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/RxkBHuye7G/cligOlQLVpj # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'config_filename' => [ # { # 'filename' => 'prog4.conf', # 'section' => 'prog' # }, # 'prog2.conf' # ], # 'output_file' => '/tmp/RxkBHuye7G/cligOlQLVpj', # '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/RxkBHuye7G/cliewCIrAmU # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cliewCIrAmU', # '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/RxkBHuye7G/cliXF050dh8 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/RxkBHuye7G/cliXF050dh8', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/noop2' # } # argv: [ # '--config-path', # '/tmp/RxkBHuye7G/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/RxkBHuye7G/cliiC3sjrm_ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cliiC3sjrm_', # '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/RxkBHuye7G/cli4VgrdIAB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cli4VgrdIAB', # '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/RxkBHuye7G/clix2MyDMKC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/clix2MyDMKC', # '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/RxkBHuye7G/cli6_Cm3ja1 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cli6_Cm3ja1', # '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/RxkBHuye7G/clifcK02PIv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/clifcK02PIv', # '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/RxkBHuye7G/cli3019rC6N # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/cli3019rC6N', # '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/RxkBHuye7G/clik1w84vmK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/RxkBHuye7G' # ], # 'output_file' => '/tmp/RxkBHuye7G/clik1w84vmK', # '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/RxkBHuye7G 1..18 ok All tests successful. Files=4, Tests=20, 15 wallclock secs ( 0.17 usr 0.02 sys + 11.63 cusr 2.23 csys = 14.05 CPU) Result: PASS PERLANCAR/Perinci-CmdLine-Lite-1.70.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.70-5JAcd9 && tar cvf - Perinci-CmdLine-Lite-1.70.ppd blib) | gzip -c >/Users/fly2000/cpanfly-5.20/var/REPO/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.70.tar.gz Perinci-CmdLine-Lite-1.70.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-01-11T10:12:07