Microsoft (R) Program Maintenance Utility Version 7.00.8882 Copyright (C) Microsoft Corp 1988-2000. All rights reserved. C:\cpanrun-5.8\build\5-8-0\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib\lib', 'blib\arch')" t\0-signature.t t\00-load.t t\context.t t\data-validate.t t\dependent-function.t t\dependent-method.t t\explicitpackage.t t\firstorder-blame.t t\generate-assertions.t t\generated-methods.t t\invariant.t t\overrides.t t\pod-coverage.t t\pod.t t\postcondition-function.t t\postcondition-method.t t\precondition-function.t t\precondition-method.t t\propagate-to-subclasses.t t\result-badusage.t t\specify-constructors.t t\use-twice.t t\0-signature................1..1 'gpg' is not recognized as an internal or external command, operable program or batch file. Cannot use GnuPG or Crypt::OpenPGP, please install either one first! ==> SKIPPED CHECKING 'Makefile'! (run Makefile.PL to ensure its integrity) <=== Skipping Makefile Skipping blib/arch/auto/Class/Agreement/.exists Skipping blib/lib/Class/.exists Skipping blib/lib/Class/Agreement.pm Skipping blib/lib/auto/Class/Agreement/.exists Skipping pm_to_blib ok 1 # Valid signature ok 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 # Failed test (t\dependent-method.t at line 35) not ok 4 - simple failure filename # 'postcondition for Camel::simple failed from t\dependent-method.t line 27 at t\dependent-method.t line 33 # ' # doesn't match '(?x-ism:t\dependent-method.t)' 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 # Looks like you failed 1 tests of 18. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 4 Failed 1/18 tests, 94.44% okay 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 (t\firstorder-blame.t at 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 (t\firstorder-blame.t at 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 (t\firstorder-blame.t at 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 (t\firstorder-blame.t at 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..1 ok 1 - Pod coverage on Class::Agreement ok t\pod........................1..1 ok 1 - blib\lib\Class\Agreement.pm ok 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 # Failed test (t\postcondition-function.t at line 128) not ok 19 - filename of failure is correct # 'postcondition for function failed at t\postcondition-function.t line 121 at t\postcondition-function.t line 125 # ' # doesn't match '(?x-ism:t\postcondition-function.t)' ok 20 - multiple return value passthrough # Looks like you failed 1 tests of 20. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 19 Failed 1/20 tests, 95.00% okay t\postcondition-method.......1..31 ok 1 - method simple success ok 2 - method simple failure # Failed test (t\postcondition-method.t at line 33) ok 3 - simple failure line number # 'postcondition for Camel::simple failed from t\postcondition-method.t line 25 at t\postcondition-method.t line 31 # ' # doesn't match '(?x-ism:t\postcondition-method.t)' not 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 # Failed test (t\postcondition-method.t at line 156) not ok 17 - failure filename # 'postcondition for ClassB::m failed since its implementation didn't adhere to the contract from file t\postcondition-method.t line 146 at t\postcondition-method.t line 152 # ' # doesn't match '(?x-ism:t\postcondition-method.t)' ok 18 - blame implementation, both fail ok 19 - failure line number # Failed test (t\postcondition-method.t at line 162) not ok 20 - failure filename # 'postcondition for ClassB::m failed since its implementation didn't adhere to the contract from file t\postcondition-method.t line 146 at t\postcondition-method.t line 158 # ' # doesn't match '(?x-ism:t\postcondition-method.t)' ok 21 - hierarchy error ok 22 - failure line number ok 23 - failure line number # Failed test (t\postcondition-method.t at line 172) not ok 24 - failure filename # 'postcondition for ClassB::m failed at t\postcondition-method.t line 140 (the parent) and file t\postcondition-method.t line 146 (the child) -- check hierarchy between ClassA and ClassB at t\postcondition-method.t line 167 # ' # doesn't match '(?x-ism:t\postcondition-method.t)' ok 25 - hierarchy only between parent and child ok 26 - failure line number # Failed test (t\postcondition-method.t at line 196) # 'postcondition for ClassC::m failed at t\postcondition-method.t line 146 (the parent) and file t\postcondition-method.t line 188 (the child) -- check hierarchy between ClassB and ClassC at t\postcondition-method.t line 192 # ' # doesn't match '(?x-ism:t\postcondition-method.t)' not 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 # Looks like you failed 5 tests of 31. dubious Test returned status 5 (wstat 1280, 0x500) DIED. FAILED tests 4, 17, 20, 24, 27 Failed 5/31 tests, 83.87% okay 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 # Failed test (t\precondition-function.t at line 99) not ok 15 - filename of failure is correct # 'precondition for function failed at t\precondition-function.t line 92 # at t\precondition-function.t line 96 # ' # doesn't match '(?x-ism:t\precondition-function.t)' ok 16 - multiple return value passthrough # Looks like you failed 1 tests of 16. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 15 Failed 1/16 tests, 93.75% okay t\precondition-method........1..24 ok 1 - method simple success ok 2 - method simple failure ok 3 - simple failure line number # Failed test (t\precondition-method.t at line 34) not ok 4 - simple failure filename # 'precondition for Camel::simple failed from t\precondition-method.t line 24 at t\precondition-method.t line 32 # ' # doesn't match '(?x-ism:t\precondition-method.t)' 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 # Failed test (t\precondition-method.t at line 143) # 'precondition for ClassB::m failed due to client input from file t\precondition-method.t line 134 at t\precondition-method.t line 140 # ' # doesn't match '(?x-ism:t\precondition-method.t)' not ok 13 - failure filename ok 14 - hierarchy error ok 15 - failure line number parent ok 16 - failure line number child # Failed test (t\precondition-method.t at line 155) # 'precondition for ClassB::m failed from t\precondition-method.t line 128 (the parent) and file t\precondition-method.t line 134 (the child) -- check hierarchy between ClassA and ClassB at t\precondition-method.t line 149 # ' # doesn't match '(?x-ism:t\precondition-method.t)' not ok 17 - failure filename ok 18 - hierarchy only between parent and child ok 19 - failure line number # Failed test (t\precondition-method.t at line 178) # 'precondition for ClassC::m failed from t\precondition-method.t line 134 (the parent) and file t\precondition-method.t line 170 (the child) -- check hierarchy between ClassB and ClassC at t\precondition-method.t line 174 # ' # doesn't match '(?x-ism:t\precondition-method.t)' not 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 # Looks like you failed 4 tests of 24. dubious Test returned status 4 (wstat 1024, 0x400) DIED. FAILED tests 4, 13, 17, 20 Failed 4/24 tests, 83.33% okay 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 Failed 5/22 test scripts, 77.27% okay. 12/249 subtests failed, 95.18% okay. Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t\dependent-method.t 1 256 18 1 5.56% 4 t\postcondition-function.t 1 256 20 1 5.00% 19 t\postcondition-method.t 5 1280 31 5 16.13% 4 17 20 24 27 t\precondition-function.t 1 256 16 1 6.25% 15 t\precondition-method.t 4 1024 24 4 16.67% 4 13 17 20 1 test and 1 subtest skipped. NMAKE : fatal error U1077: 'C:\cpanrun-5.8\build\5-8-0\bin\perl.exe' : return code '0xff' Stop.