PATH=/usr/bin:/bin:/data/fly2200/var/megalib/bin Start 2015-11-28T06:25:52 ActivePerl-2200 CPAN-2.00 Reading '/data/fly2200/var/cpan/Metadata' Database was generated on Sat, 28 Nov 2015 04:53:37 GMT Running make for P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz Checksum for /data/fly2200/var/cpan/sources/authors/id/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz ok Perinci-CmdLine-Lite-1.40/ Perinci-CmdLine-Lite-1.40/README Perinci-CmdLine-Lite-1.40/lib/ Perinci-CmdLine-Lite-1.40/lib/Perinci/ Perinci-CmdLine-Lite-1.40/lib/Perinci/CmdLine/ Perinci-CmdLine-Lite-1.40/lib/Perinci/CmdLine/Lite.pm Perinci-CmdLine-Lite-1.40/lib/Perinci/CmdLine/Base.pm Perinci-CmdLine-Lite-1.40/lib/Perinci/CmdLine/Util/ Perinci-CmdLine-Lite-1.40/lib/Perinci/CmdLine/Util/Config.pm Perinci-CmdLine-Lite-1.40/Makefile.PL Perinci-CmdLine-Lite-1.40/share/ Perinci-CmdLine-Lite-1.40/share/templates/ Perinci-CmdLine-Lite-1.40/share/templates/description.txt Perinci-CmdLine-Lite-1.40/share/templates/synopsis.txt Perinci-CmdLine-Lite-1.40/Changes Perinci-CmdLine-Lite-1.40/dist.ini Perinci-CmdLine-Lite-1.40/LICENSE Perinci-CmdLine-Lite-1.40/t/ Perinci-CmdLine-Lite-1.40/t/00-compile.t Perinci-CmdLine-Lite-1.40/t/suite.t Perinci-CmdLine-Lite-1.40/t/release-rinci.t Perinci-CmdLine-Lite-1.40/t/author-pod-syntax.t Perinci-CmdLine-Lite-1.40/t/author-pod-coverage.t Perinci-CmdLine-Lite-1.40/weaver.ini Perinci-CmdLine-Lite-1.40/MANIFEST Perinci-CmdLine-Lite-1.40/META.json Perinci-CmdLine-Lite-1.40/META.yml Perinci-CmdLine-Lite-1.40/devscripts/ Perinci-CmdLine-Lite-1.40/devscripts/bench-startup CPAN.pm: Building P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz >>> /data/fly2200/ap2200-299134/bin/perl-static Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Perinci::CmdLine::Lite Writing MYMETA.yml and MYMETA.json >>> 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/Util/Config.pm blib/lib/Perinci/CmdLine/Util/Config.pm 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 3 pod documents PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz make -- OK 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 "/data/fly2200/ap2200-299134/bin/perl-static" "-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/3IAIBgSnqL/cliUrvBWQXF # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliUrvBWQXF', # '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: extra args is okay # Generated CLI script at /tmp/3IAIBgSnqL/cliA0T9VeoD # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliA0T9VeoD', # '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 3 - extra args is okay # Subtest: help for cli with subcommands # Generated CLI script at /tmp/3IAIBgSnqL/cli2aVd_gaa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli2aVd_gaa', # '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 4 - help for cli with subcommands # Subtest: help on a subcommand # Generated CLI script at /tmp/3IAIBgSnqL/cli_sw8CmfK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli_sw8CmfK', # '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 5 - help on a subcommand 1..5 ok 1 - help action # Subtest: version action ok 1 - dummy # Subtest: --version # Generated CLI script at /tmp/3IAIBgSnqL/cliIy9qfDJr # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliIy9qfDJr', # '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/3IAIBgSnqL/cliTah4pGZF # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliTah4pGZF', # '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/3IAIBgSnqL/cli3DcKo6yL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli3DcKo6yL', # '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/3IAIBgSnqL/cliDKbFSgLk # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/3IAIBgSnqL/cliDKbFSgLk', # '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/3IAIBgSnqL/cliGNfIYS_P # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'odd_even', # 'output_file' => '/tmp/3IAIBgSnqL/cliGNfIYS_P', # '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/3IAIBgSnqL/cliTbF28Hlo # 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/3IAIBgSnqL/cliTbF28Hlo', # '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/3IAIBgSnqL/cli2B1RQV2f # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli2B1RQV2f', # '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/3IAIBgSnqL/cliPwxCDkcK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliPwxCDkcK', # '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/3IAIBgSnqL/cliyXQcrtUL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliyXQcrtUL', # '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/3IAIBgSnqL/clihJ0KK8ZP # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clihJ0KK8ZP', # '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/3IAIBgSnqL/clicMJRlj70 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clicMJRlj70', # '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/3IAIBgSnqL/cli4F5s8Fgx # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli4F5s8Fgx', # '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/3IAIBgSnqL/climBopGQ_N # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'default_subcommand' => 'noop', # 'output_file' => '/tmp/3IAIBgSnqL/climBopGQ_N', # '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/3IAIBgSnqL/clik8oMti0G # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clik8oMti0G', # '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 1..10 ok 4 - call action # Subtest: cmdline_src (error cases) ok 1 - dummy # Subtest: unknown value # Generated CLI script at /tmp/3IAIBgSnqL/climfMk7irK # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/climfMk7irK', # '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/3IAIBgSnqL/cliJ3UE0Rjp # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliJ3UE0Rjp', # '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/3IAIBgSnqL/cli50Ku7lxx # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli50Ku7lxx', # '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/3IAIBgSnqL/cli1BuoFUpJ # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli1BuoFUpJ', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/clib51_7P0C # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clib51_7P0C', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/3IAIBgSnqL/infile1' # ] # Script's stdout: <["200","OK","a1=foo\na2=[]",{"func.args":{"-cmdline_src_a1":"file","-cmdline_srcfilenames_a1":["/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cliZjKc17uf # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliZjKc17uf', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/3IAIBgSnqL/infile1', # '--a2', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cli2QChscBw # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli2QChscBw', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--json', # '--a1', # '/tmp/3IAIBgSnqL/infile1', # '--a2', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/infile1"],"-cmdline_srcfilenames_a2":["/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cliNXY7Ml6g # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliNXY7Ml6g', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a1', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cliac2UzpL4 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliac2UzpL4', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_file' # } # argv: [ # '--a2', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cli7M9O0T1R # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli7M9O0T1R', # '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/3IAIBgSnqL/cliDc0Qmjiv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliDc0Qmjiv', # '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/3IAIBgSnqL/cliUDZYKStl # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliUDZYKStl', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_array' # } # argv: [] # Script's stdout: # Script's stderr: <> ok 1 - exit_code ok 2 - stdout_like 1..2 ok 4 - stdin array # Subtest: stdin + arg set to "-" # Generated CLI script at /tmp/3IAIBgSnqL/cliEFA7opSc # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliEFA7opSc', # '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/3IAIBgSnqL/clid3kfD9o3 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clid3kfD9o3', # '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/3IAIBgSnqL/cliig2JOdya # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliig2JOdya', # '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/3IAIBgSnqL/cli728c65Wg # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli728c65Wg', # '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/3IAIBgSnqL/cliHdTfDEfW # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliHdTfDEfW', # '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/3IAIBgSnqL/clix4bJTA2X # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clix4bJTA2X', # '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/3IAIBgSnqL/cli5rxi44Yn # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli5rxi44Yn', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/clitERtOG_P # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clitERtOG_P', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/3IAIBgSnqL/infile1', # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cli2rom8Xvn # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli2rom8Xvn', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '--json', # '/tmp/3IAIBgSnqL/infile1' # ] # Script's stdout: <["200","OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_file","-cmdline_srcfilenames_a1":["/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cligMS2g8tL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cligMS2g8tL', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_file_str' # } # argv: [ # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/clik65HXEsi # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clik65HXEsi', # '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/3IAIBgSnqL/cliPtnMfKrB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliPtnMfKrB', # '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: <> 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/3IAIBgSnqL/cliW1Z0xpjs # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliW1Z0xpjs', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_array' # } # argv: [ # '/tmp/3IAIBgSnqL/infile1', # '/tmp/3IAIBgSnqL/infile2' # ] # Script's stdout: # Script's stderr: <> 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/3IAIBgSnqL/cli3kJpXQVz # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli3kJpXQVz', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '--json', # '/tmp/3IAIBgSnqL/infile1' # ] # Script's stdout: <["200","OK","a1=foo",{"func.args":{"-cmdline_src_a1":"stdin_or_files","-cmdline_srcfilenames_a1":["/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cliRdruOaCd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliRdruOaCd', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/CmdLineSrc/cmdline_src_stdin_or_files_str' # } # argv: [ # '/tmp/3IAIBgSnqL/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/3IAIBgSnqL/cliZ2GDEZrg # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliZ2GDEZrg', # '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/3IAIBgSnqL/clifldSnY6K # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clifldSnY6K', # '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: <> 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: dry-run ok 1 - dummy # Subtest: dry-run (via env, 0) # Generated CLI script at /tmp/3IAIBgSnqL/cliZPiPwXel # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliZPiPwXel', # '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/3IAIBgSnqL/clivnAMfYtv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clivnAMfYtv', # '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/3IAIBgSnqL/cli8g3zLXUL # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli8g3zLXUL', # '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 11 - 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 12 - tx # Subtest: streaming ok 1 - dummy # Subtest: stream input (simple types) # Generated CLI script at /tmp/3IAIBgSnqL/cliHhR49TV7 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliHhR49TV7', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc' # } # argv: [ # '/tmp/3IAIBgSnqL/infile1' # ] # Script's stdout: # Script's stderr: <> ok 1 - exit_code ok 2 - stdout_like 1..2 ok 2 - stream input (simple types) # Subtest: stream input (json stream) # Generated CLI script at /tmp/3IAIBgSnqL/cli8CS7LZM2 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli8CS7LZM2', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc_keys' # } # argv: [ # '/tmp/3IAIBgSnqL/infile2' # ] # Script's stdout: # Script's stderr: <> ok 1 - exit_code ok 2 - stdout_like 1..2 ok 3 - stream input (json stream) # Subtest: stream input (json stream, error in record) # Generated CLI script at /tmp/3IAIBgSnqL/clietguApyV # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clietguApyV', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/wc_keys' # } # argv: [ # '/tmp/3IAIBgSnqL/infile3' # ] # Script's stdout: line 2. # > # Script's stderr: <> ok 1 - exit_code 1..1 ok 4 - stream input (json stream, error in record) # Subtest: stream output (simple types) # Generated CLI script at /tmp/3IAIBgSnqL/climaHDh0Ef # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/climaHDh0Ef', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/square_input' # } # argv: [ # '/tmp/3IAIBgSnqL/infile4' # ] # Script's stdout: <1 # 9 # 25 # > # Script's stderr: <> ok 1 - exit_code ok 2 - stdout_like 1..2 ok 5 - stream output (simple types) # Subtest: stream output (json stream) # Generated CLI script at /tmp/3IAIBgSnqL/cli9mSKYDrX # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli9mSKYDrX', # 'overwrite' => 1, # 'read_config' => 0, # 'read_env' => 0, # 'url' => '/Perinci/Examples/Stream/hash_stream' # } # 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 6 - stream output (json stream) 1..6 ok 13 - streaming # Subtest: result metadata ok 1 - dummy # Subtest: cmdline.exit_code # Generated CLI script at /tmp/3IAIBgSnqL/clicFRWvf7R # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clicFRWvf7R', # '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/3IAIBgSnqL/cliwQzfARqe # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliwQzfARqe', # '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/3IAIBgSnqL/cliIhVVdtPW # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliIhVVdtPW', # '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/3IAIBgSnqL/clijTZYkCWn # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clijTZYkCWn', # '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/3IAIBgSnqL/cli_K8xfkgd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli_K8xfkgd', # '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 14 - result metadata # Subtest: completion ok 1 - dummy # Subtest: self-completion works # Generated CLI script at /tmp/3IAIBgSnqL/cli3GzjgaVC # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cli3GzjgaVC', # '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/3IAIBgSnqL/cliAbl_yx2R # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliAbl_yx2R', # '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/3IAIBgSnqL/cliE0xwsCKB # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliE0xwsCKB', # '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 15 - completion # Subtest: env ok 1 - dummy # Subtest: env read # Generated CLI script at /tmp/3IAIBgSnqL/cliuT2PB3ay # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliuT2PB3ay', # '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/3IAIBgSnqL/clib8uE17l5 # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/clib8uE17l5', # '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/3IAIBgSnqL/cliMW6uKUHu # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'env_name' => 'foo_opt', # 'output_file' => '/tmp/3IAIBgSnqL/cliMW6uKUHu', # '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 16 - env # Subtest: config file ok 1 - dummy # Subtest: attr:config_dirs # Generated CLI script at /tmp/3IAIBgSnqL/cli_Myo2Bcv # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cli_Myo2Bcv', # '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/3IAIBgSnqL/cliFPpMfDHp # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'config_filename' => 'prog2.conf', # 'output_file' => '/tmp/3IAIBgSnqL/cliFPpMfDHp', # '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: common option: --no-config # Generated CLI script at /tmp/3IAIBgSnqL/cli09a5BiwI # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cli09a5BiwI', # '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 4 - common option: --no-config # Subtest: common option: --config-path # Generated CLI script at /tmp/3IAIBgSnqL/cliZIqaCdBd # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'output_file' => '/tmp/3IAIBgSnqL/cliZIqaCdBd', # 'overwrite' => 1, # 'read_config' => 1, # 'read_env' => 0, # 'script_name' => 'prog', # 'url' => '/Perinci/Examples/noop2' # } # argv: [ # '--config-path', # '/tmp/3IAIBgSnqL/prog.conf' # ] # Script's stdout: # Script's stderr: <> ok 1 - exit_code ok 2 - stdout_like 1..2 ok 5 - common option: --config-path # Subtest: common option: --config-profile # Generated CLI script at /tmp/3IAIBgSnqL/cli8LQrysHa # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cli8LQrysHa', # '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 6 - common option: --config-profile # Subtest: unknown config profile -> error # Generated CLI script at /tmp/3IAIBgSnqL/cliqOUEGzmm # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cliqOUEGzmm', # '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 7 - unknown config profile -> error # Subtest: unknown config profile but does not read config -> ok # Generated CLI script at /tmp/3IAIBgSnqL/cliHbOeR0eE # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cliHbOeR0eE', # '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 8 - unknown config profile but does not read config -> ok # Subtest: subcommand # Generated CLI script at /tmp/3IAIBgSnqL/cliW0Llejpy # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cliW0Llejpy', # '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 9 - subcommand # Subtest: subcommand + --config-profile # Generated CLI script at /tmp/3IAIBgSnqL/cliKMqZAPuA # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/cliKMqZAPuA', # '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 10 - subcommand + --config-profile # Subtest: array-ify if argument is array # Generated CLI script at /tmp/3IAIBgSnqL/clirY6OtIGR # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/clirY6OtIGR', # '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 11 - array-ify if argument is array # Subtest: can also set common option # Generated CLI script at /tmp/3IAIBgSnqL/clirrPBV55M # gen_pericmd_script args: { # 'cmdline' => 'Perinci::CmdLine::Lite', # 'config_dirs' => [ # '/tmp/3IAIBgSnqL' # ], # 'output_file' => '/tmp/3IAIBgSnqL/clirrPBV55M', # '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 12 - can also set common option 1..12 ok 17 - config file # all tests successful, deleting tempdir /tmp/3IAIBgSnqL 1..17 ok All tests successful. Files=5, Tests=20, 14 wallclock secs ( 0.14 usr 0.04 sys + 11.67 cusr 1.57 csys = 13.42 CPU) Result: PASS PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz make test TEST_VERBOSE=1 -- OK perlancar <perlancar@gmail.com> A lightweight Rinci/Riap-based command-line application framework >>> (cd /data/fly2200/var/cpan/build/Perinci-CmdLine-Lite-1.40-4dqM9M && tar cvf - Perinci-CmdLine-Lite-1.40.ppd blib) | gzip -c >/data/fly2200/var/REPO/P/PE/PERLANCAR/Perinci-CmdLine-Lite-1.40.tar.gz Perinci-CmdLine-Lite-1.40.ppd blib/ blib/man3/ blib/man3/Perinci::CmdLine::Lite.3 blib/man3/Perinci::CmdLine::Base.3 blib/man3/Perinci::CmdLine::Util::Config.3 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/Util/ blib/lib/Perinci/CmdLine/Util/Config.pm blib/lib/Perinci/CmdLine/Lite.pm >>> mv /data/fly2200/var/cpan/build/Perinci-CmdLine-Lite-1.40-4dqM9M/Perinci-CmdLine-Lite-1.40.ppd /data/fly2200/var/REPO/P/PE/PERLANCAR VmSize: 327468 kB Finished 2015-11-28T06:26:12