PATH=/usr/bin:/bin:/Users/fly1400/var/megalib/bin
Start 2013-11-16T01:52:21
ActivePerl-1400 CPAN-2.00
Reading '/Users/fly1400/var/cpan/Metadata'
Database was generated on Sat, 16 Nov 2013 07:07:48 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
>>> /Users/fly1400/ap1400/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
>>> /Users/fly1400/ap1400/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 /Users/fly1400/ap1400/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, 3 wallclock secs ( 0.12 usr 0.05 sys + 1.44 cusr 0.20 csys = 1.81 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 /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP && tar cvf - Perinci-Sub-Wrapper-0.48.ppd blib) | gzip -c >/Users/fly1400/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 /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/Perinci-Sub-Wrapper-0.48.ppd /Users/fly1400/var/REPO/S/SH/SHARYANTO
Running make for S/SH/SHARYANTO/Perinci-Sub-Complete-0.36.tar.gz
Prepending /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/blib/arch /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/blib/lib to PERL5LIB for 'get'
Has already been unwrapped into directory /Users/fly1400/var/cpan/build/Perinci-Sub-Complete-0.36-nQAZqT
Prepending /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/blib/arch /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/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 /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/blib/arch /Users/fly1400/var/cpan/build/Perinci-Sub-Wrapper-0.48-6BlHAP/blib/lib to PERL5LIB for 'test'
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 /Users/fly1400/ap1400/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, 3 wallclock secs ( 0.07 usr 0.02 sys + 0.77 cusr 0.53 csys = 1.39 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 /Users/fly1400/var/cpan/build/Perinci-Sub-Complete-0.36-nQAZqT && tar cvf - Perinci-Sub-Complete-0.36.ppd blib) | gzip -c >/Users/fly1400/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 /Users/fly1400/var/cpan/build/Perinci-Sub-Complete-0.36-nQAZqT/Perinci-Sub-Complete-0.36.ppd /Users/fly1400/var/REPO/S/SH/SHARYANTO
Finished 2013-11-16T01:52:35