PATH=/opt/SUNWspro/bin:/usr/local/bin:/opt/csw/bin:/usr/ccs/bin:/usr/bin:/usr/sbin Start 2013-11-16T03:39:08 ActivePerl-1402 CPAN-2.00 Reading '/export/home/fly1432/var/cpan/Metadata' Database was generated on Sat, 16 Nov 2013 08:41:02 GMT Running make for S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz Checksum for /net/nas1/cpan/authors/id/S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz ok Perinci-Sub-Complete-0.36/ Perinci-Sub-Complete-0.36/Changes Perinci-Sub-Complete-0.36/LICENSE Perinci-Sub-Complete-0.36/MANIFEST Perinci-Sub-Complete-0.36/lib/ Perinci-Sub-Complete-0.36/lib/Perinci/ Perinci-Sub-Complete-0.36/lib/Perinci/Sub/ Perinci-Sub-Complete-0.36/lib/Perinci/Sub/Complete.pm Perinci-Sub-Complete-0.36/MANIFEST.SKIP Perinci-Sub-Complete-0.36/README Perinci-Sub-Complete-0.36/META.json Perinci-Sub-Complete-0.36/Makefile.PL Perinci-Sub-Complete-0.36/dist.ini Perinci-Sub-Complete-0.36/t/ Perinci-Sub-Complete-0.36/t/complete_from_schema.t Perinci-Sub-Complete-0.36/t/release-rinci.t Perinci-Sub-Complete-0.36/t/shell_complete_arg.t Perinci-Sub-Complete-0.36/t/release-pod-coverage.t Perinci-Sub-Complete-0.36/t/00-compile.t Perinci-Sub-Complete-0.36/t/complete_arg_val.t Perinci-Sub-Complete-0.36/t/release-pod-syntax.t Perinci-Sub-Complete-0.36/t/complete_arg_elem.t Perinci-Sub-Complete-0.36/weaver.ini Perinci-Sub-Complete-0.36/META.yml CPAN.pm: Building S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz >>> /export/home/fly1432/bin/perl Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Perinci::Sub::Complete Writing MYMETA.yml and MYMETA.json ---- Unsatisfied dependencies detected during ---- ---- SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz ---- Perinci::Sub::Wrapper [build_requires] Running make test Delayed until after prerequisites Running test for module 'Perinci::Sub::Wrapper' Running make for S/SH/SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz Checksum for /net/nas1/cpan/authors/id/S/SH/SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz ok Perinci-Sub-Wrapper-0.48/ Perinci-Sub-Wrapper-0.48/Changes Perinci-Sub-Wrapper-0.48/LICENSE Perinci-Sub-Wrapper-0.48/MANIFEST Perinci-Sub-Wrapper-0.48/lib/ Perinci-Sub-Wrapper-0.48/lib/Test/ Perinci-Sub-Wrapper-0.48/lib/Test/Perinci/ Perinci-Sub-Wrapper-0.48/lib/Test/Perinci/Sub/ Perinci-Sub-Wrapper-0.48/lib/Test/Perinci/Sub/Wrapper.pm Perinci-Sub-Wrapper-0.48/lib/Perinci/ Perinci-Sub-Wrapper-0.48/lib/Perinci/Sub/ Perinci-Sub-Wrapper-0.48/lib/Perinci/Sub/Wrapper.pm Perinci-Sub-Wrapper-0.48/MANIFEST.SKIP Perinci-Sub-Wrapper-0.48/README Perinci-Sub-Wrapper-0.48/META.json Perinci-Sub-Wrapper-0.48/Makefile.PL Perinci-Sub-Wrapper-0.48/dist.ini Perinci-Sub-Wrapper-0.48/t/ Perinci-Sub-Wrapper-0.48/t/prop-args.t Perinci-Sub-Wrapper-0.48/t/release-rinci.t Perinci-Sub-Wrapper-0.48/t/opt-allow_unknown_args.t Perinci-Sub-Wrapper-0.48/t/01-basics.t Perinci-Sub-Wrapper-0.48/t/opt-validate_args.t Perinci-Sub-Wrapper-0.48/t/release-pod-coverage.t Perinci-Sub-Wrapper-0.48/t/opt-remove_internal_properties.t Perinci-Sub-Wrapper-0.48/t/opt-sub_name.t Perinci-Sub-Wrapper-0.48/t/opt-validate_result.t Perinci-Sub-Wrapper-0.48/t/opt-allow_invalid_args.t Perinci-Sub-Wrapper-0.48/t/00-compile.t Perinci-Sub-Wrapper-0.48/t/prop-deps.t Perinci-Sub-Wrapper-0.48/t/prop-result.t Perinci-Sub-Wrapper-0.48/t/wrap_all_subs.t Perinci-Sub-Wrapper-0.48/t/prop-features.t Perinci-Sub-Wrapper-0.48/t/opt-skip.t Perinci-Sub-Wrapper-0.48/t/release-pod-syntax.t Perinci-Sub-Wrapper-0.48/weaver.ini Perinci-Sub-Wrapper-0.48/META.yml CPAN.pm: Building S/SH/SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz >>> /export/home/fly1432/bin/perl Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Perinci::Sub::Wrapper Writing MYMETA.yml and MYMETA.json >>> make cp lib/Perinci/Sub/Wrapper.pm blib/lib/Perinci/Sub/Wrapper.pm cp lib/Test/Perinci/Sub/Wrapper.pm blib/lib/Test/Perinci/Sub/Wrapper.pm Manifying blib/man3/Perinci::Sub::Wrapper.3 Manifying blib/man3/Test::Perinci::Sub::Wrapper.3 SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz make -- OK Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 /export/home/fly1432/bin/perl "-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/Sub/Wrapper.pm loaded ok ok 2 - Test/Perinci/Sub/Wrapper.pm loaded ok ok t/01-basics.t ....................... # Subtest: meta version == 1.0 -> converted to 1.1 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - version ok 5 - args ok 6 - result 1..6 ok 1 - meta version == 1.0 -> converted to 1.1 # Subtest: unsupported conversion -> fail ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 502 1..3 ok 2 - unsupported conversion -> fail # Subtest: (trap=1, default) call doesn't die ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - schemas by default are normalized (a) ok 7 - schemas in cmdline_aliases by default are normalized (b) 1..7 ok 3 - (trap=1, default) call doesn't die # Subtest: (trap=1, default) call dies -> 500 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res is array ok 6 - call status is 500 ok 7 - schemas are not normalize when normalized_schemas=0 (a) 1..7 ok 4 - (trap=1, default) call dies -> 500 # Subtest: (trap=0) call dies -> dies ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call dies 1..4 ok 5 - (trap=0) call dies -> dies # Subtest: (result_naked=0) convert result_naked to 1 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta result_naked=1 1..6 ok 6 - (result_naked=0) convert result_naked to 1 # Subtest: (result_naked=1) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 7 - (result_naked=1) # Subtest: (result_naked=1) convert result_naked to 0 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta result_naked=0 1..6 ok 8 - (result_naked=1) convert result_naked to 0 # Subtest: (args_as=array) convert args_as to arrayref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 9 - (args_as=array) convert args_as to arrayref # Subtest: (args_as=array) convert args_as to hash ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 10 - (args_as=array) convert args_as to hash # Subtest: (args_as=array) convert args_as to hashref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 11 - (args_as=array) convert args_as to hashref # Subtest: (args_as=arrayref) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 12 - (args_as=arrayref) # Subtest: (args_as=arrayref) convert args_as to array ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 13 - (args_as=arrayref) convert args_as to array # Subtest: (args_as=arrayref) convert args_as to hash ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 14 - (args_as=arrayref) convert args_as to hash # Subtest: (args_as=arrayref) convert args_as to hashref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 15 - (args_as=arrayref) convert args_as to hashref # Subtest: (args_as=hash) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 16 - (args_as=hash) # Subtest: (args_as=hash) convert args_as to array ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 17 - (args_as=hash) convert args_as to array # Subtest: (args_as=hash) convert args_as to arrayref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 18 - (args_as=hash) convert args_as to arrayref # Subtest: (args_as=hash) convert args_as to hashref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 19 - (args_as=hash) convert args_as to hashref # Subtest: (args_as=hashref) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 20 - (args_as=hashref) # Subtest: (args_as=hashref) convert args_as to array ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 21 - (args_as=hashref) convert args_as to array # Subtest: (args_as=hashref) convert args_as to arrayref ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 22 - (args_as=hashref) convert args_as to arrayref # Subtest: (args_as=hashref) convert args_as to hash ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res ok 6 - new meta args_as 1..6 ok 23 - (args_as=hashref) convert args_as to hash # Subtest: (args_as=hash, default) greedy, no conversion ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 24 - (args_as=hash, default) greedy, no conversion # Subtest: (args_as=hash) greedy, conversion to array ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 25 - (args_as=hash) greedy, conversion to array ok 26 - generated wrapper is blessed ok 27 - original input subroutine not blessed # Subtest: double wrapping, no conversion ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res 1..5 ok 28 - double wrapping, no conversion # Subtest: convert default_lang ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - newmeta 1..4 ok 29 - convert default_lang 1..29 ok t/opt-allow_invalid_args.t .......... ok 1 - already tested in prop-args.t 1..1 ok t/opt-allow_unknown_args.t .......... ok 1 - already tested in prop-args.t 1..1 ok t/opt-remove_internal_properties.t .. # Subtest: (remove_internal_properties=1, default) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - _prop1 removed ok 5 - _argspec1 removed ok 6 - _res1 removed ok 7 - _ex1 removed ok 8 - _ln1 removed 1..8 ok 1 - (remove_internal_properties=1, default) # Subtest: (remove_internal_properties=0) ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - _prop1 exists ok 5 - _argspec1 exists ok 6 - _res1 exists ok 7 - _ex1 exists ok 8 - _ln1 exists 1..8 ok 2 - (remove_internal_properties=0) 1..2 ok t/opt-skip.t ........................ # Subtest: none (the default) ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: # Subtest: call #2: unknown arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 3 - call \#2: unknown arg 1..3 ok 1 - none (the default) # Subtest: args ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: # Subtest: call #2: unknown arg not checked ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: unknown arg not checked 1..3 ok 2 - args 1..2 ok t/opt-sub_name.t .................... # Subtest: specifying sub_name only instead of sub ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call result 1..4 ok 1 - specifying sub_name only instead of sub 1..1 ok t/opt-validate_args.t ............... ok 1 - already tested in prop-args.t 1..1 ok t/opt-validate_result.t ............. ok 1 - already tested in prop-result.t 1..1 ok t/prop-args.t ....................... # Subtest: unknown arg spec key -> dies ok 1 - wrap dies 1..1 ok 1 - unknown arg spec key -> dies # Subtest: arg spec key x ok 1 - wrap doesn't die 1..1 ok 2 - arg spec key x # Subtest: arg spec key prefixed by _ is ignored ok 1 - wrap doesn't die 1..1 ok 3 - arg spec key prefixed by _ is ignored # Subtest: -wrapper special argument is passed ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 ok 4 - res 1..4 ok 2 - call \#1: 1..2 ok 4 - -wrapper special argument is passed # Subtest: req arg + schema req no schema default ok 1 - wrap doesn't die # Subtest: call #1: ok ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: ok # Subtest: call #2: unknown special arg ok ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: unknown special arg ok # Subtest: call #3: unknown arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 4 - call \#3: unknown arg # Subtest: call #4: invalid arg name ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 5 - call \#4: invalid arg name # Subtest: call #5: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 6 - call \#5: missing arg # Subtest: call #6: invalid arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 7 - call \#6: invalid arg value # Subtest: call #7: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 8 - call \#7: undef arg value 1..8 ok 5 - req arg + schema req no schema default # Subtest: opt: validate_args=0 ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: invalid arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: invalid arg value # Subtest: call #3: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: undef arg value 1..4 ok 6 - opt: validate_args=0 # Subtest: opt via metadata attr: validate_args=0 ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: invalid arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: invalid arg value # Subtest: call #3: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: undef arg value 1..4 ok 7 - opt via metadata attr: validate_args=0 # Subtest: opt: allow_invalid_args=1 ok 1 - wrap doesn't die # Subtest: call #1: invalid arg name ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: invalid arg name 1..2 ok 8 - opt: allow_invalid_args=1 # Subtest: opt: allow_unknown_args=1 ok 1 - wrap doesn't die # Subtest: call #1: unknown arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: unknown arg 1..2 ok 9 - opt: allow_unknown_args=1 # Subtest: req arg + schema no req with schema default ok 1 - wrap doesn't die # Subtest: call #1: missing arg -> default supplied ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 ok 4 - actual res 1..4 ok 2 - call \#1: missing arg -> default supplied # Subtest: call #2: undef arg value -> default supplied ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 ok 4 - actual res 1..4 ok 3 - call \#2: undef arg value -> default supplied # Subtest: call #3: invalid arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 4 - call \#3: invalid arg value 1..4 ok 10 - req arg + schema no req with schema default # Subtest: default supplied even when validate_args=0 ok 1 - wrap doesn't die # Subtest: call #1: missing arg -> default supplied ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 ok 4 - actual res 1..4 ok 2 - call \#1: missing arg -> default supplied # Subtest: call #2: undef arg value -> default supplied ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 ok 4 - actual res 1..4 ok 3 - call \#2: undef arg value -> default supplied 1..3 ok 11 - default supplied even when validate_args=0 # Subtest: req arg + schema no req no schema default ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value 1..3 ok 12 - req arg + schema no req no schema default # Subtest: req arg + no schema ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 400 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value 1..3 ok 13 - req arg + no schema # Subtest: no req arg + schema no req with schema default ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value 1..3 ok 14 - no req arg + schema no req with schema default # Subtest: no req arg + schema with schema default ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value 1..3 ok 15 - no req arg + schema with schema default # Subtest: default supplied even when validate_args=0 ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value 1..3 ok 16 - default supplied even when validate_args=0 # Subtest: default # Subtest: normal ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value # Subtest: call #3: supplied arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: supplied arg 1..4 ok 1 - normal # Subtest: req ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value # Subtest: call #3: supplied arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: supplied arg 1..4 ok 2 - req # Subtest: default prop supersedes schema default ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value # Subtest: call #3: supplied arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: supplied arg 1..4 ok 3 - default prop supersedes schema default # Subtest: default supplied even when validate_args=0 ok 1 - wrap doesn't die # Subtest: call #1: missing arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: missing arg # Subtest: call #2: undef arg value ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: undef arg value # Subtest: call #3: supplied arg ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 4 - call \#3: supplied arg 1..4 ok 4 - default supplied even when validate_args=0 1..4 ok 17 - default 1..17 ok t/prop-deps.t ....................... # Subtest: deps 1 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res is array ok 6 - call status is 412 1..6 ok 1 - deps 1 # Subtest: deps 2 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res is array ok 6 - call status is 200 1..6 ok 2 - deps 2 1..2 ok t/prop-features.t ................... # Subtest: deps 1 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res is array ok 6 - call status is 412 1..6 ok 1 - deps 1 # Subtest: deps 1 ok 1 - wrap doesn't die ok 2 - wrap res is array ok 3 - wrap status is 200 ok 4 - call doesn't die ok 5 - call res is array ok 6 - call status is 200 1..6 ok 2 - deps 1 1..2 ok t/prop-result.t ..................... # Subtest: wrapper checks that sub produces enveloped result ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 500 1..3 ok 2 - call \#1: 1..2 ok 1 - wrapper checks that sub produces enveloped result # Subtest: basics ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: # Subtest: call #2: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 500 1..3 ok 3 - call \#2: 1..3 ok 2 - basics # Subtest: opt: validate_result=0 ok 1 - wrap doesn't die # Subtest: call #1: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 2 - call \#1: # Subtest: call #2: ok 1 - doesn't die ok 2 - res is array ok 3 - status is 200 1..3 ok 3 - call \#2: 1..3 ok 3 - opt: validate_result=0 1..3 ok t/release-pod-coverage.t ............ skipped: these tests are for release candidate testing t/release-pod-syntax.t .............. skipped: these tests are for release candidate testing t/release-rinci.t ................... skipped: these tests are for release candidate testing t/wrap_all_subs.t ................... ok 1 - f1 wrapped ok 2 - f1 result ok 3 - f1 meta replaced ok 4 - f2 wrapped ok 5 - f2 result ok 6 - f2 meta replaced 1..6 ok All tests successful. Files=17, Tests=70, 6 wallclock secs ( 0.46 usr 0.06 sys + 4.95 cusr 0.50 csys = 5.97 CPU) Result: PASS SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz make test TEST_VERBOSE=1 -- OK Steven Haryanto <stevenharyanto@gmail.com> A multi-purpose subroutine wrapping framework >>> (cd /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN && tar cvf - Perinci-Sub-Wrapper-0.48.ppd blib) | gzip -c >/export/home/fly1432/var/REPO/S/SH/SHARYANTO/Perinci-Sub-Wrapper-0.48.tar.gz Perinci-Sub-Wrapper-0.48.ppd blib/ blib/lib/ blib/lib/Perinci/ blib/lib/Perinci/Sub/ blib/lib/Perinci/Sub/Wrapper.pm blib/lib/Test/ blib/lib/Test/Perinci/ blib/lib/Test/Perinci/Sub/ blib/lib/Test/Perinci/Sub/Wrapper.pm blib/man3/ blib/man3/Perinci::Sub::Wrapper.3 blib/man3/Test::Perinci::Sub::Wrapper.3 >>> mv /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/Perinci-Sub-Wrapper-0.48.ppd /export/home/fly1432/var/REPO/S/SH/SHARYANTO Running make for S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz Prepending /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/arch /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory /export/home/fly1432/var/cpan/build/Perinci-Sub-Complete-0.36-kmi_JH Prepending /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/arch /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/lib to PERL5LIB for 'make' CPAN.pm: Building S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz >>> make cp lib/Perinci/Sub/Complete.pm blib/lib/Perinci/Sub/Complete.pm Manifying blib/man3/Perinci::Sub::Complete.3 SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz make -- OK Prepending /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/arch /export/home/fly1432/var/cpan/build/Perinci-Sub-Wrapper-0.48-v8EkTN/blib/lib to PERL5LIB for 'test' Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 /export/home/fly1432/bin/perl "-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/Sub/Complete.pm loaded ok ok t/complete_arg_elem.t ..... ok 1 1..1 ok t/complete_arg_val.t ...... ok 1 1..1 ok t/complete_from_schema.t .. ok 1 1..1 ok t/release-pod-coverage.t .. skipped: these tests are for release candidate testing t/release-pod-syntax.t .... skipped: these tests are for release candidate testing t/release-rinci.t ......... skipped: these tests are for release candidate testing t/shell_complete_arg.t .... # Subtest: complete arg name (q(CMD ^)) ok 1 - result 1..1 ok 1 - complete arg name (q(CMD ^)) # Subtest: complete arg name 2 (q(CMD -^)) ok 1 - result 1..1 ok 2 - complete arg name 2 (q(CMD -^)) # Subtest: complete arg name 3 (q(CMD --^)) ok 1 - result 1..1 ok 3 - complete arg name 3 (q(CMD --^)) # Subtest: complete arg name 4 (q(CMD --^)) ok 1 - result 1..1 ok 4 - complete arg name 4 (q(CMD --^)) # Subtest: complete arg name 5 (q(CMD --b^)) ok 1 - result 1..1 ok 5 - complete arg name 5 (q(CMD --b^)) # Subtest: complete arg name 6 (q(CMD --x^)) ok 1 - result 1..1 ok 6 - complete arg name 6 (q(CMD --x^)) # Subtest: complete arg name 7 (q(CMD --bool1^)) ok 1 - result 1..1 ok 7 - complete arg name 7 (q(CMD --bool1^)) # Subtest: no longer complete mentioned arg (q(CMD --bool1 ^)) ok 1 - result 1..1 ok 8 - no longer complete mentioned arg (q(CMD --bool1 ^)) # Subtest: no longer complete mentioned arg (2) (q(CMD --nobool1 ^)) ok 1 - result 1..1 ok 9 - no longer complete mentioned arg (2) (q(CMD --nobool1 ^)) # Subtest: no longer complete mentioned arg (3) (q(CMD --str1 1 --nobool1 ^)) ok 1 - result 1..1 ok 10 - no longer complete mentioned arg (3) (q(CMD --str1 1 --nobool1 ^)) # Subtest: no longer complete mentioned common opts (q(CMD --bool1 --nobool2 --help ^)) ok 1 - result 1..1 ok 11 - no longer complete mentioned common opts (q(CMD --bool1 --nobool2 --help ^)) # Subtest: no longer complete mentioned common opts (2) (q(CMD --bool1 --nobool2 -h ^)) ok 1 - result 1..1 ok 12 - no longer complete mentioned common opts (2) (q(CMD --bool1 --nobool2 -h ^)) # Subtest: complete arg value (q(CMD --bool1 --str2 ^)) ok 1 - result 1..1 ok 13 - complete arg value (q(CMD --bool1 --str2 ^)) # Subtest: complete arg value (2) (q(CMD --bool1 --str2=f^)) ok 1 - result 1..1 ok 14 - complete arg value (2) (q(CMD --bool1 --str2=f^)) # Subtest: complete arg name instead of value when user type - (q(CMD --bool1 -^)) ok 1 - result 1..1 ok 15 - complete arg name instead of value when user type - (q(CMD --bool1 -^)) # Subtest: complete arg value (spec "in") (q(CMD --bool1 --str2 ba^)) ok 1 - result 1..1 ok 16 - complete arg value (spec "in") (q(CMD --bool1 --str2 ba^)) # Subtest: complete arg value (spec "completion") (q(CMD --str1 ^)) ok 1 - result 1..1 ok 17 - complete arg value (spec "completion") (q(CMD --str1 ^)) # Subtest: complete arg value (spec "completion") (2) (q(CMD --str1 ap^)) ok 1 - result 1..1 ok 18 - complete arg value (spec "completion") (2) (q(CMD --str1 ap^)) # Subtest: complete arg value (spec "completion") (3) (q(CMD --str1 apx^)) ok 1 - result 1..1 ok 19 - complete arg value (spec "completion") (3) (q(CMD --str1 apx^)) # Subtest: complete arg value (arg "custom_arg_completer" HoCode) (q(CMD --str1 ^)) ok 1 - result 1..1 ok 20 - complete arg value (arg "custom_arg_completer" HoCode) (q(CMD --str1 ^)) # Subtest: complete arg value (arg "custom_arg_completer" HoCode, no match) (q(CMD --str1 ^)) ok 1 - result 1..1 ok 21 - complete arg value (arg "custom_arg_completer" HoCode, no match) (q(CMD --str1 ^)) # Subtest: complete arg value (opts "custom_arg_completer" code) (q(CMD --str1 ^)) ok 1 - result 1..1 ok 22 - complete arg value (opts "custom_arg_completer" code) (q(CMD --str1 ^)) # Subtest: complete arg value, pos (1) (q(CMD ^)) ok 1 - result 1..1 ok 23 - complete arg value, pos (1) (q(CMD ^)) # Subtest: complete arg value, arg_pos (1b) (q(CMD a^)) ok 1 - result 1..1 ok 24 - complete arg value, arg_pos (1b) (q(CMD a^)) # Subtest: complete arg value, arg_pos (2) (q(CMD a ^)) ok 1 - result 1..1 ok 25 - complete arg value, arg_pos (2) (q(CMD a ^)) # Subtest: complete arg value, arg_pos (2b) (q(CMD a f^)) ok 1 - result 1..1 ok 26 - complete arg value, arg_pos (2b) (q(CMD a f^)) # Subtest: complete arg value, arg_pos (3) (q(CMD a e ^)) ok 1 - result 1..1 ok 27 - complete arg value, arg_pos (3) (q(CMD a e ^)) # Subtest: complete arg value, arg_pos (3b) (q(CMD a e j^)) ok 1 - result 1..1 ok 28 - complete arg value, arg_pos (3b) (q(CMD a e j^)) # Subtest: complete arg value, arg_pos mixed with --opt (q(CMD a e -^)) ok 1 - result 1..1 ok 29 - complete arg value, arg_pos mixed with --opt (q(CMD a e -^)) # Subtest: custom_completer (decline) (q(CMD a e -^)) ok 1 - result 1..1 ok 30 - custom_completer (decline) (q(CMD a e -^)) # Subtest: custom_completer (q(CMD a e -^)) ok 1 - result 1..1 ok 31 - custom_completer (q(CMD a e -^)) # Subtest: complete arg name (bool, one-letter, cmdline_aliases) (q(CMD ^)) ok 1 - result 1..1 ok 32 - complete arg name (bool, one-letter, cmdline_aliases) (q(CMD ^)) # Subtest: special argument names (q(CMD --f^)) ok 1 - result 1..1 ok 33 - special argument names (q(CMD --f^)) # Subtest: special option: dry-run (q(CMD --d^)) ok 1 - result 1..1 ok 34 - special option: dry-run (q(CMD --d^)) # Subtest: complete element value (schema) # Subtest: q(CMD ^) ok 1 - result 1..1 ok 1 - q(CMD ^) # Subtest: q(CMD a^) ok 1 - result 1..1 ok 2 - q(CMD a^) # Subtest: q(CMD -^) ok 1 - result 1..1 ok 3 - q(CMD -^) # Subtest: q(CMD x ^) ok 1 - result 1..1 ok 4 - q(CMD x ^) # Subtest: q(CMD x a^) ok 1 - result 1..1 ok 5 - q(CMD x a^) # Subtest: q(CMD x -^) ok 1 - result 1..1 ok 6 - q(CMD x -^) # Subtest: --arg is always completeable (q(CMD --arg x --^)) ok 1 - result 1..1 ok 7 - --arg is always completeable (q(CMD --arg x --^)) 1..7 ok 35 - complete element value (schema) # Subtest: complete element value (arg spec's element_completion) # Subtest: q(CMD ^) ok 1 - result 1..1 ok 1 - q(CMD ^) # Subtest: q(CMD d^) ok 1 - result 1..1 ok 2 - q(CMD d^) # Subtest: q(CMD -^) ok 1 - result 1..1 ok 3 - q(CMD -^) # Subtest: q(CMD x ^) ok 1 - result 1..1 ok 4 - q(CMD x ^) # Subtest: q(CMD x d^) ok 1 - result 1..1 ok 5 - q(CMD x d^) # Subtest: q(CMD x -^) ok 1 - result 1..1 ok 6 - q(CMD x -^) 1..6 ok 36 - complete element value (arg spec's element_completion) # Subtest: complete element value (custom_arg_element_completer HoC) # Subtest: q(CMD ^) ok 1 - result 1..1 ok 1 - q(CMD ^) # Subtest: q(CMD g^) ok 1 - result 1..1 ok 2 - q(CMD g^) # Subtest: q(CMD -^) ok 1 - result 1..1 ok 3 - q(CMD -^) # Subtest: q(CMD x ^) ok 1 - result 1..1 ok 4 - q(CMD x ^) # Subtest: q(CMD x g^) ok 1 - result 1..1 ok 5 - q(CMD x g^) # Subtest: q(CMD x -^) ok 1 - result 1..1 ok 6 - q(CMD x -^) 1..6 ok 37 - complete element value (custom_arg_element_completer HoC) # Subtest: complete element value (custom_arg_element_completer Code) # Subtest: q(CMD ^) ok 1 - result 1..1 ok 1 - q(CMD ^) # Subtest: q(CMD g^) ok 1 - result 1..1 ok 2 - q(CMD g^) # Subtest: q(CMD -^) ok 1 - result 1..1 ok 3 - q(CMD -^) # Subtest: q(CMD x ^) ok 1 - result 1..1 ok 4 - q(CMD x ^) # Subtest: q(CMD x g^) ok 1 - result 1..1 ok 5 - q(CMD x g^) # Subtest: q(CMD x -^) ok 1 - result 1..1 ok 6 - q(CMD x -^) 1..6 ok 38 - complete element value (custom_arg_element_completer Code) 1..38 ok All tests successful. Files=8, Tests=42, 4 wallclock secs ( 0.27 usr 0.05 sys + 2.70 cusr 1.12 csys = 4.14 CPU) Result: PASS SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz make test TEST_VERBOSE=1 -- OK Steven Haryanto <stevenharyanto@gmail.com> Shell completion routines using Rinci metadata >>> (cd /export/home/fly1432/var/cpan/build/Perinci-Sub-Complete-0.36-kmi_JH && tar cvf - Perinci-Sub-Complete-0.36.ppd blib) | gzip -c >/export/home/fly1432/var/REPO/S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz Perinci-Sub-Complete-0.36.ppd blib/ blib/lib/ blib/lib/Perinci/ blib/lib/Perinci/Sub/ blib/lib/Perinci/Sub/Complete.pm blib/man3/ blib/man3/Perinci::Sub::Complete.3 >>> mv /export/home/fly1432/var/cpan/build/Perinci-Sub-Complete-0.36-kmi_JH/Perinci-Sub-Complete-0.36.ppd /export/home/fly1432/var/REPO/S/SH/SHARYANTO Finished 2013-11-16T03:39:37