Checking if your kit is complete... Looks good Writing Makefile for Class::Agreement cp lib/Class/Agreement.pm blib/lib/Class/Agreement.pm Manifying blib/man3/Class::Agreement.3 PERL_DL_NONLAZY=1 /home/cpanrun/pa-risc1.1/build/5.6.1/bin/perl -Iblib/arch -Iblib/lib -I/home/cpanrun/pa-risc1.1/build/5.6.1/lib/5.6.1/PA-RISC1.1-thread-multi -I/home/cpanrun/pa-risc1.1/build/5.6.1/lib/5.6.1 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t t/0-signature................1..1 ok 1 # skip Next time around, consider install Module::Signature, so you can verify the integrity of this distribution. ok 1/1 skipped: Next time around, consider install Module::Signature, so you can verify the integrity of this distribution. t/00-load....................1..1 ok 1 - use Class::Agreement; ok t/context....................1..6 ok 1 ok 2 ok 3 ok 4 # skip void method context listed under CAVEATS ok 5 ok 6 ok 1/6 skipped: void method context listed under CAVEATS t/data-validate..............1..0 # Skip Optional module Data::Validate 0.04 required for this test skipped all skipped: Optional module Data::Validate 0.04 required for this test t/dependent-function.........1..14 ok 1 - proof of concept success ok 2 - proof of concept failure ok 3 - no reason this should fail, one ok 4 - no reason this should fail, two ok 5 - method arguments outside ok 6 - method arguments inside ok 7 - return list, array ok 8 - return list, scalar ok 9 - return scalar, array ok 10 - return scalar, scalar ok 11 - method multiple success ok 12 - method multiple failure first ok 13 - method multiple failure second ok 14 - method multiple failure both ok t/dependent-method...........1..18 ok 1 - method simple success ok 2 - method simple failure ok 3 - simple failure line number ok 4 - simple failure filename ok 5 - no reason this should fail, one ok 6 - no reason this should fail, two ok 7 - method arguments outside ok 8 - method arguments inside ok 9 - return list, array ok 10 - return list, scalar ok 11 - return scalar, array ok 12 - return scalar, scalar ok 13 - proof of concept success ok 14 - proof of concept failure ok 15 - method multiple success ok 16 - method multiple failure first ok 17 - method multiple failure second ok 18 - method multiple failure both ok t/explicitpackage............1..2 ok 1 - simple success ok 2 - simple failure ok t/firstorder-blame...........1..4 not ok 1 - g()'s implementation is at fault # TODO higher-order is unfinished # Failed (TODO) test 'g()'s implementation is at fault' # at t/firstorder-blame.t line 57. # 'postcondition for main::g failed from t/firstorder-blame.t line 40 at t/firstorder-blame.t line 55 # ' # doesn't match '(?-xism:function main::g provided invalid input)' not ok 2 - contract 1 was broken # TODO higher-order is unfinished # Failed (TODO) test 'contract 1 was broken' # at t/firstorder-blame.t line 59. # 'postcondition for main::g failed from t/firstorder-blame.t line 40 at t/firstorder-blame.t line 55 # ' # doesn't match '(?-xism:line 35)' not ok 3 - g()'s caller is at fault # TODO higher-order is unfinished # Failed (TODO) test 'g()'s caller is at fault' # at t/firstorder-blame.t line 77. # 'postcondition for main::g2 failed from t/firstorder-blame.t line 40 at t/firstorder-blame.t line 75 # ' # doesn't match '(?-xism:caller of main::g2 provided invalid)' not ok 4 - contract 2 was broken # TODO higher-order is unfinished # Failed (TODO) test 'contract 2 was broken' # at t/firstorder-blame.t line 78. # 'postcondition for main::g2 failed from t/firstorder-blame.t line 40 at t/firstorder-blame.t line 75 # ' # doesn't match '(?-xism:line 36)' ok t/generate-assertions........1..4 ok 1 - argument_is_divisible_by(2) pass ok 2 - argument_is_divisible_by(2) fail ok 3 - argument_is_divisible_by(3) pass ok 4 - argument_is_divisible_by(3) fail ok t/generated-methods..........1..6 ok 1 - method simple success ok 2 - method simple failure ok 3 - method simple success ok 4 - method simple failure ok 5 - method simple success ok 6 - method simple failure ok t/invariant..................1..25 ok 1 - The object isa Camel ok 2 - counter check after new() ok 3 - counter check after some_method() ok 4 - counter check after anotherMethod() ok 5 - counter check after _a_private_method() ok 6 - counter check after RESERVED() ok 7 - counter check after destructor ok 8 - only one argument to invariant ok 9 - argument is Llama obj or class ok 10 - only one argument to invariant ok 11 - argument is Llama obj or class ok 12 - only one argument to invariant ok 13 - argument is Llama obj or class ok 14 - counter check after invariant args test ok 15 - invariant not checked on class method... ok 16 - ...but it's checked after an instance method ok 17 - invariant a was checked once after constructor ok 18 - invariant b was checked once after constructor ok 19 - invariant c was checked once after constructor ok 20 - invariant a was checked twice after a method ok 21 - invariant b was checked twice after a method ok 22 - invariant c was checked twice after a method ok 23 - no error ok 24 - faulty method is blamed ok 25 - tampering is blamed ok t/overrides..................1..25 ok 1 - 1st pre on grandparent class fails ok 2 - 2nd pre on grandparent class fails ok 3 - 1st post on grandparent class fails ok 4 - 2nd post on grandparent class fails ok 5 - all is well on grandparent class ok 6 - 1st pre on parent class fails ok 7 - 2nd pre on parent class fails ok 8 - 1st post on parent class fails ok 9 - 2nd post on parent class fails ok 10 - all is well on parent class ok 11 - child class lives and ignores 1st old precondition ok 12 - child class lives and ignores 2nd old precondition ok 13 - child class lives and ignores 1st old postcondition ok 14 - child class lives and ignores 2nd old postcondition ok 15 - child class checks new precondition and dies ok 16 - child class checks new postcondition and dies ok 17 - subchild class lives and ignores 1st old precondition ok 18 - subchild class lives and ignores 2nd old precondition ok 19 - subchild class lives and ignores 1st old postcondition ok 20 - subchild class lives and ignores 2nd old postcondition ok 21 - subchild class checks new precondition and dies ok 22 - subchild class checks new postcondition and dies ok 23 - alt child appends a contract ok 24 - alt subchild use appended ok 25 - can't specify contracts for abstract classes ok t/pod-coverage...............1..0 # Skip Test::Pod::Coverage 1.04 required for testing POD coverage skipped all skipped: Test::Pod::Coverage 1.04 required for testing POD coverage t/pod........................1..0 # Skip Test::Pod 1.14 required for testing POD skipped all skipped: Test::Pod 1.14 required for testing POD t/postcondition-function.....1..20 ok 1 - function simple success ok 2 - function simple failure ok 3 - no function argument modification ok 4 - return array, array ok 5 - return array, scalar ok 6 - return scalar, array ok 7 - return scalar, scalar ok 8 - function void context success ok 9 - function void context failure ok 10 - function scalar context original success ok 11 - function scalar context original still success ok 12 - function scalar context wrapped success ok 13 - function scalar context wrapped failure ok 14 - method multiple success ok 15 - method multiple failure first ok 16 - method multiple failure second ok 17 - method multiple failure both ok 18 - line number of failure is correct ok 19 - filename of failure is correct ok 20 - multiple return value passthrough ok t/postcondition-method.......1..31 ok 1 - method simple success ok 2 - method simple failure ok 3 - simple failure line number ok 4 - simple failure filename ok 5 - method arguments ok 6 - return list, array ok 7 - return list, scalar ok 8 - return scalar, array ok 9 - return scalar, scalar ok 10 - child postcondition invoked on success ok 11 - parent postcondition invoked on success ok 12 - child postcondition invoked on failure ok 13 - parent postcondition invoked on failure ok 14 - no failure, multiple classes ok 15 - blame implementation, child fails ok 16 - failure line number ok 17 - failure filename ok 18 - blame implementation, both fail ok 19 - failure line number ok 20 - failure filename ok 21 - hierarchy error ok 22 - failure line number ok 23 - failure line number ok 24 - failure filename ok 25 - hierarchy only between parent and child ok 26 - failure line number ok 27 - failure filename ok 28 - method multiple success ok 29 - method multiple failure first ok 30 - method multiple failure second ok 31 - method multiple failure both ok t/precondition-function......1..16 ok 1 - function simple success ok 2 - function simple failure ok 3 - no function argument modification ok 4 - function void context success ok 5 - function void context failure ok 6 - function scalar context original success ok 7 - function scalar context original still success ok 8 - function scalar context wrapped success ok 9 - function scalar context wrapped failure ok 10 - method multiple success ok 11 - method multiple failure first ok 12 - method multiple failure second ok 13 - method multiple failure both ok 14 - line number of failure is correct ok 15 - filename of failure is correct ok 16 - multiple return value passthrough ok t/precondition-method........1..24 ok 1 - method simple success ok 2 - method simple failure ok 3 - simple failure line number ok 4 - simple failure filename ok 5 - method simple arguments ok 6 - no method argument modification ok 7 - child precondition invoked on success ok 8 - parent precondition NOT invoked on success ok 9 - child precondition invoked on failure ok 10 - parent precondition invoked on failure ok 11 - client input error ok 12 - failure line number ok 13 - failure filename ok 14 - hierarchy error ok 15 - failure line number parent ok 16 - failure line number child ok 17 - failure filename ok 18 - hierarchy only between parent and child ok 19 - failure line number ok 20 - failure filename ok 21 - method multiple success ok 22 - method multiple failure first ok 23 - method multiple failure second ok 24 - method multiple failure both ok t/propagate-to-subclasses....1..36 ok 1 - TheBase::method_with_contract, pre ok 2 - TheBase::method_with_contract, post ok 3 - TheBase::method_with_contract, neither ok 4 - TheBase::unaffected_method, no pre ok 5 - TheBase::unaffected_method, no post ok 6 - TheBase::unaffected_method, neither ok 7 - InheritedClassA::method_with_contract, pre ok 8 - InheritedClassA::method_with_contract, post ok 9 - InheritedClassA::method_with_contract, neither ok 10 - InheritedClassA::unaffected_method, no pre ok 11 - InheritedClassA::unaffected_method, no post ok 12 - InheritedClassA::unaffected_method, neither ok 13 - InheritedClassB::method_with_contract, pre ok 14 - InheritedClassB::method_with_contract, post ok 15 - InheritedClassB::method_with_contract, neither ok 16 - InheritedClassB::unaffected_method, no pre ok 17 - InheritedClassB::unaffected_method, no post ok 18 - InheritedClassB::unaffected_method, neither ok 19 - OverriddenClassA::method_with_contract, pre ok 20 - OverriddenClassA::method_with_contract, post ok 21 - OverriddenClassA::method_with_contract, neither ok 22 - OverriddenClassA::unaffected_method, no pre ok 23 - OverriddenClassA::unaffected_method, no post ok 24 - OverriddenClassA::unaffected_method, neither ok 25 - OverriddenClassB::method_with_contract, pre ok 26 - OverriddenClassB::method_with_contract, post ok 27 - OverriddenClassB::method_with_contract, neither ok 28 - OverriddenClassB::unaffected_method, no pre ok 29 - OverriddenClassB::unaffected_method, no post ok 30 - OverriddenClassB::unaffected_method, neither ok 31 - UnaffectedClass::some_method, no pre ok 32 - UnaffectedClass::some_method, no post ok 33 - UnaffectedClass::some_method, neither ok 34 - UnaffectedOverriddenClass::some_method, no pre ok 35 - UnaffectedOverriddenClass::some_method, no post ok 36 - UnaffectedOverriddenClass::some_method, neither ok t/result-badusage............1..1 ok 1 - can't use result outside of postcondition ok t/specify-constructors.......1..12 ok 1 - invariants checked once after constructor ok 2 - invariants checked twice for regular method ok 3 - invariants checked once after custom constructor in subclass ok 4 - invariants checked once after custom constructor in subsubclass ok 5 - The object isa Auroch ok 6 - invariants checked once after regular constructor ok 7 - The object isa Auroch ok 8 - invariants checked once after an extra constructor ok 9 - invariants checked twice for regular method ok 10 - thinks new() is a regular method ok 11 - thinks another_constructor() is a regular method ok 12 - thinks not_a_constructor() is a regular method ok t/use-twice..................1..1 ok 1 - no failure, multiple classes ok All tests successful, 3 tests and 2 subtests skipped. Files=22, Tests=247, 26 wallclock secs (23.96 cusr + 1.44 csys = 25.40 CPU) Installing /home/cpanrun/pa-risc1.1/build/5.6.1/lib/site_perl/5.6.1/Class/Agreement.pm Installing /home/cpanrun/pa-risc1.1/build/5.6.1/man/man3/Class::Agreement.3 Writing /home/cpanrun/pa-risc1.1/build/5.6.1/lib/site_perl/5.6.1/PA-RISC1.1-thread-multi/auto/Class/Agreement/.packlist Appending installation info to /home/cpanrun/pa-risc1.1/build/5.6.1/lib/5.6.1/PA-RISC1.1-thread-multi/perllocal.pod