# running Build.PL C:\cpanrun\build\5-10-0\bin\perl.exe Build.PL Checking whether your kit is complete... Looks good Checking prerequisites... Looks good Creating new 'Build' script for 'Class-Meta' version '0.53' Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. C:\cpanrun\build\5-10-0\bin\perl.exe Build --makefile_env_macros 1 Build: blib\lib\Class\Meta.pm: cannot resolve L in paragraph 420. Build: blib\lib\Class\Meta\Type.pm: cannot resolve L in paragraph 11. Build: blib\lib\Class\Meta\Type.pm: cannot resolve L in paragraph 11. Build: blib\lib\Class\Meta\Type.pm: cannot resolve L in paragraph 11. Build: blib\lib\Class\Meta\Type.pm: cannot resolve L in paragraph 172. Copying lib\Class\Meta\Types\String.pm -> blib\lib\Class\Meta\Types\String.pm Copying lib\Class\Meta\Types\Boolean.pm -> blib\lib\Class\Meta\Types\Boolean.pm Copying lib\Class\Meta\Type.pm -> blib\lib\Class\Meta\Type.pm Copying lib\Class\Meta.pm -> blib\lib\Class\Meta.pm Copying lib\Class\Meta\Class.pm -> blib\lib\Class\Meta\Class.pm Copying lib\Class\Meta\Types\Perl.pm -> blib\lib\Class\Meta\Types\Perl.pm Copying lib\Class\Meta\Attribute.pm -> blib\lib\Class\Meta\Attribute.pm Copying lib\Class\Meta\AccessorBuilder\SemiAffordance.pm -> blib\lib\Class\Meta\AccessorBuilder\SemiAffordance.pm Copying lib\Class\Meta\AccessorBuilder.pm -> blib\lib\Class\Meta\AccessorBuilder.pm Copying lib\Class\Meta\Method.pm -> blib\lib\Class\Meta\Method.pm Copying lib\Class\Meta\Types\Numeric.pm -> blib\lib\Class\Meta\Types\Numeric.pm Copying lib\Class\Meta\AccessorBuilder\Affordance.pm -> blib\lib\Class\Meta\AccessorBuilder\Affordance.pm Copying lib\Class\Meta\Constructor.pm -> blib\lib\Class\Meta\Constructor.pm Manifying blib\lib/Class/Meta/AccessorBuilder/SemiAffordance.pm -> blib\libdoc\Class.Meta.AccessorBuilder.SemiAffordance.3 Manifying blib\lib/Class/Meta/Types/Numeric.pm -> blib\libdoc\Class.Meta.Types.Numeric.3 Manifying blib\lib/Class/Meta/Types/String.pm -> blib\libdoc\Class.Meta.Types.String.3 Manifying blib\lib/Class/Meta/Attribute.pm -> blib\libdoc\Class.Meta.Attribute.3 Manifying blib\lib/Class/Meta/Constructor.pm -> blib\libdoc\Class.Meta.Constructor.3 Manifying blib\lib/Class/Meta.pm -> blib\libdoc\Class.Meta.3 Manifying blib\lib/Class/Meta/Types/Boolean.pm -> blib\libdoc\Class.Meta.Types.Boolean.3 Manifying blib\lib/Class/Meta/AccessorBuilder.pm -> blib\libdoc\Class.Meta.AccessorBuilder.3 Manifying blib\lib/Class/Meta/Class.pm -> blib\libdoc\Class.Meta.Class.3 Manifying blib\lib/Class/Meta/Method.pm -> blib\libdoc\Class.Meta.Method.3 Manifying blib\lib/Class/Meta/Type.pm -> blib\libdoc\Class.Meta.Type.3 Manifying blib\lib/Class/Meta/AccessorBuilder/Affordance.pm -> blib\libdoc\Class.Meta.AccessorBuilder.Affordance.3 Manifying blib\lib/Class/Meta/Types/Perl.pm -> blib\libdoc\Class.Meta.Types.Perl.3 HTMLifying blib\lib\Class\Meta\AccessorBuilder\SemiAffordance.pm -> blib\libhtml\site\lib\Class\Meta\AccessorBuilder\SemiAffordance.html HTMLifying blib\lib\Class\Meta\Types\Numeric.pm -> blib\libhtml\site\lib\Class\Meta\Types\Numeric.html HTMLifying blib\lib\Class\Meta\Types\String.pm -> blib\libhtml\site\lib\Class\Meta\Types\String.html HTMLifying blib\lib\Class\Meta\Attribute.pm -> blib\libhtml\site\lib\Class\Meta\Attribute.html HTMLifying blib\lib\Class\Meta\Constructor.pm -> blib\libhtml\site\lib\Class\Meta\Constructor.html HTMLifying blib\lib\Class\Meta.pm -> blib\libhtml\site\lib\Class\Meta.html HTMLifying blib\lib\Class\Meta\Types\Boolean.pm -> blib\libhtml\site\lib\Class\Meta\Types\Boolean.html HTMLifying blib\lib\Class\Meta\AccessorBuilder.pm -> blib\libhtml\site\lib\Class\Meta\AccessorBuilder.html HTMLifying blib\lib\Class\Meta\Class.pm -> blib\libhtml\site\lib\Class\Meta\Class.html HTMLifying blib\lib\Class\Meta\Method.pm -> blib\libhtml\site\lib\Class\Meta\Method.html HTMLifying blib\lib\Class\Meta\Type.pm -> blib\libhtml\site\lib\Class\Meta\Type.html HTMLifying blib\lib\Class\Meta\AccessorBuilder\Affordance.pm -> blib\libhtml\site\lib\Class\Meta\AccessorBuilder\Affordance.html HTMLifying blib\lib\Class\Meta\Types\Perl.pm -> blib\libhtml\site\lib\Class\Meta\Types\Perl.html Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. C:\cpanrun\build\5-10-0\bin\perl.exe Build --makefile_env_macros 1 test t\attr...........................1..44 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::String; ok 3 - Create CM object ok 4 - The object isa Class::Meta ok 5 - Create 'inst' attr ok 6 - The object isa Class::Meta::Attribute ok 7 - Check inst name ok 8 - Check inst desc ok 9 - Check inst label ok 10 - Check inst type ok 11 - Check inst view ok 12 - Get attribute construction exception ok 13 - Caught proper exception ok 14 - Caught no name exception ok 15 - Caught proper no name exception ok 16 - Caught dupe name exception ok 17 - Caught proper dupe name exception ok 18 - Caught bogus view exception ok 19 - Caught proper bogus view exception ok 20 - Caught another bogus view exception ok 21 - Caught another proper bogus view exception ok 22 - Caught bogus caller exception ok 23 - Caught proper bogus caller exception ok 24 - Create 'new_attr' ok 25 - The object isa Class::Meta::Attribute ok 26 - Check new_attr name ok 27 - Check new_attr desc ok 28 - Check new_attr label ok 29 - Check new_attr view ok 30 - Create subclassed CM object ok 31 - The object isa Class::Meta ok 32 - The object isa Class::Meta::SubClass ok 33 - Create subclassed foo_attr ok 34 - The object isa Class::Meta::Attribute ok 35 - Check new foo_attr name ok 36 - Check new foo_attr desc ok 37 - Check new foo_attr label ok 38 - Check new foo_attr view ok 39 - Create Class ok 40 - Add foo attribute ok 41 - The object isa Class::Meta::Attribute::Sub ok 42 - The object isa Class::Meta::Attribute ok 43 - Check an attibute ok 44 - Check added attribute ok t\base...........................1..132 ok 1 - use Class::Meta; ok 2 - Class::Meta::TestPerson->new ok 3 - id is 12 ok 4 - name to "David" ok 5 - name is "David" ok 6 - name to array ref croaks ok 7 - correct string exception ok 8 - Get Class::Meta::Class object ok 9 - Class is_a TestPerson ok 10 - Key is correct ok 11 - package() ok 12 - Name is correct ok 13 - Description is correct ok 14 - Get attributes from attributes() ok 15 - Five attributes from attributes() ok 16 - First object is a attribute object isa Class::Meta::Attribute ok 17 - Second object is a attribute object isa Class::Meta::Attribute ok 18 - Third object is a attribute object isa Class::Meta::Attribute ok 19 - Fourth object is a attribute object isa Class::Meta::Attribute ok 20 - Check attribute class ok 21 - Get specific attributes ok 22 - Two specific attributes from attributes() ok 23 - Attribute object type isa Class::Meta::Attribute ok 24 - First attr name ok 25 - Second attr name ok 26 - Get ID attribute object ok 27 - ID name ok 28 - ID description ok 29 - ID view ok 30 - ID authorization ok 31 - ID type ok 32 - ID label ok 33 - ID required ok 34 - ID default ok 35 - ID is 12 ok 36 - Set val failure ok 37 - set val exception ok 38 - Get name attribute ok 39 - Name name ok 40 - Name description ok 41 - Name view ok 42 - Name authorization ok 43 - Name type ok 44 - Name label ok 45 - Name required ok 46 - Name default ok 47 - Name get ok 48 - Name set ok 49 - New Name get ok 50 - Object name ok 51 - Object name ok 52 - Final Name get ok 53 - Get age attribute ok 54 - Age name ok 55 - Age description ok 56 - Age view ok 57 - Age authorization ok 58 - Age type ok 59 - Age label ok 60 - Age required ok 61 - Age default ok 62 - Age get ok 63 - Age set ok 64 - New Age get ok 65 - Object age ok 66 - Object age ok 67 - Final Age get ok 68 - Get count attribute ok 69 - Count name ok 70 - Count description ok 71 - Count view ok 72 - Count authorization ok 73 - Count type ok 74 - Count label ok 75 - Count required ok 76 - Count default ok 77 - Count get ok 78 - Count set ok 79 - New Count get ok 80 - Object count ok 81 - Set object count ok 82 - Final Count get ok 83 - Class count ok 84 - Set class count ok 85 - Class count again ok 86 - Object count after class ok 87 - Final Count get after class ok 88 - Got goop ok 89 - Still got goop ok 90 - Get goop attribute object ok 91 - Got attribute goop ok 92 - Can't set goop ok 93 - Still got attribute goop ok 94 - Get method objects ok 95 - Number of methods from methods() ok 96 - First object is a method object isa Class::Meta::Method ok 97 - Second object is a method object isa Class::Meta::Method ok 98 - First method ok 99 - Second method ok 100 - Check method class ok 101 - Check method args ok 102 - Check method returns ok 103 - Second specific method args ok 104 - Second specific method returns ok 105 - Grab specific methods. ok 106 - Two methods from methods() ok 107 - First specific method ok 108 - Second specific method ok 109 - Get chk_pass method object ok 110 - chk_pass name ok 111 - Call chk_pass returns true ok 112 - Call chk_pass returns false ok 113 - Get constructor objects ok 114 - Number of constructors from constructors() ok 115 - First object is a constructor object isa Class::Meta::Constructor ok 116 - Check new constructor name ok 117 - Check constructor class ok 118 - Grab specific constructor. ok 119 - Two constructors from constructors() ok 120 - Check specific constructor ok 121 - for_key returns class ok 122 - Class::Meta->can('keys') ok 123 - Calling keys in scalar context should succeed ok 124 - And it should return an array ref ok 125 - And keys should return the correct keys ok 126 - Calling keys in list context should succeed ok 127 - And it should return the correct number of keys ok 128 - And keys should return the correct keys ok 129 - Class::Meta->can('clear') ok 130 - And it should delete a key if provided with one ok 131 - But deleting a non-existent key should be a no-op ok 132 - And calling it without arguments should remove all keys ok t\chk_types......................1..195 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Create Class::Meta object ok 8 - Get string ok 9 - Check lc conversion on key ok 10 - Check string key ok 11 - Check string name ok 12 - Check string check ok 13 - Check string code ok 14 - Create foo1 attribute ok 15 - Make simple string set ok 16 - String accessor exists ok 17 - Set string value ok 18 - Check string value ok 19 - Got invalid string error ok 20 - correct string exception ok 21 - Check string attr_set ok 22 - Check string attr_get ok 23 - Check string getter ok 24 - Check string setter ok 25 - Check string getter again ok 26 - Get boolean ok 27 - Check bool alias ok 28 - Check boolean key ok 29 - Check boolean name ok 30 - Check boolean check ok 31 - Create foo2 attribute ok 32 - Make simple boolean set ok 33 - Boolean accessor exists ok 34 - Set boolean value ok 35 - Check boolean value ok 36 - Check boolean attr_set ok 37 - Check boolean attr_get ok 38 - Check boolean getter ok 39 - Check boolean getter again ok 40 - Get whole ok 41 - Check whole key ok 42 - Check whole name ok 43 - Check whole check ok 44 - Check whole code ok 45 - Create foo3 attribute ok 46 - Make simple whole set ok 47 - Whole accessor exists ok 48 - Set whole value ok 49 - Check whole value ok 50 - Got invalid whole error ok 51 - correct whole exception ok 52 - Check whole attr_set ok 53 - Check whole attr_get ok 54 - Check whole getter ok 55 - Check whole setter ok 56 - Check whole getter again ok 57 - Get integer ok 58 - Check int alias ok 59 - Check integer key ok 60 - Check integer name ok 61 - Check integer check ok 62 - Check integer code ok 63 - Create foo4 attribute ok 64 - Make simple integer set ok 65 - Integer accessor exists ok 66 - Set integer value ok 67 - Check integer value ok 68 - Got invalid integer error ok 69 - correct integer exception ok 70 - Check integer attr_set ok 71 - Check integer attr_get ok 72 - Check integer getter ok 73 - Check integer setter ok 74 - Check integer getter again ok 75 - Get decimal ok 76 - Check dec alias ok 77 - Check decimal key ok 78 - Check decimal name ok 79 - Check decimal check ok 80 - Check decimal code ok 81 - Create foo5 attribute ok 82 - Make simple decimal set ok 83 - Decimal accessor exists ok 84 - Set decimal value ok 85 - Check decimal value ok 86 - Got invalid decimal error ok 87 - correct decimal exception ok 88 - Check decimal attr_set ok 89 - Check decimal attr_get ok 90 - Check decimal getter ok 91 - Check decimal setter ok 92 - Check decimal getter again ok 93 - Get float ok 94 - Check float key ok 95 - Check float name ok 96 - Check float check ok 97 - Check float code ok 98 - Create foo6 attribute ok 99 - Make simple float set ok 100 - Float accessor exists ok 101 - Set float value ok 102 - Check float value ok 103 - Got invalid float error ok 104 - correct float exception ok 105 - Check float attr_set ok 106 - Check float attr_get ok 107 - Check float getter ok 108 - Check float setter ok 109 - Check float getter again ok 110 - Get scalar ok 111 - Check scalar key ok 112 - Check scalar name ok 113 - Check scalar check ok 114 - Create foo7 attribute ok 115 - Make simple scalar set ok 116 - Scalar accessor exists ok 117 - Set scalar value ok 118 - Check scalar value ok 119 - Check scalar attr_set ok 120 - Check scalar attr_get ok 121 - Check scalar getter ok 122 - Check scalar setter ok 123 - Check scalar getter again ok 124 - Get scalar ref ok 125 - Check scalar ref key ok 126 - Check scalar ref name ok 127 - Check scalar ref check ok 128 - Check scalar ref code ok 129 - Create foo8 attribute ok 130 - Make simple scalarref set ok 131 - Scalarref accessor exists ok 132 - Set scalarref value ok 133 - Check scalarref value ok 134 - Got invalid scalarref error ok 135 - correct scalarref exception ok 136 - Check scalarref attr_set ok 137 - Check scalarref attr_get ok 138 - Check scalarref getter ok 139 - Check scalarref setter ok 140 - Check scalarref getter again ok 141 - Get array ok 142 - Check arrayref alias ok 143 - Check array key ok 144 - Check array name ok 145 - Check array check ok 146 - Check array code ok 147 - Create foo9 attribute ok 148 - Make simple arrayref set ok 149 - Arrayref accessor exists ok 150 - Set arrayref value ok 151 - Check arrayref value ok 152 - Got invalid arrayref error ok 153 - correct arrayref exception ok 154 - Check arrayref attr_set ok 155 - Check arrayref attr_get ok 156 - Check arrayref getter ok 157 - Check arrayref setter ok 158 - Check arrayref getter again ok 159 - Get hash ok 160 - Check hashref alias ok 161 - Check hash key ok 162 - Check hash name ok 163 - Check hash check ok 164 - Check hash code ok 165 - Create foo10 attribute ok 166 - Make simple hashref set ok 167 - Hashref accessor exists ok 168 - Set hashref value ok 169 - Check hashref value ok 170 - Got invalid hashref error ok 171 - correct hashref exception ok 172 - Check hashref attr_set ok 173 - Check hashref attr_get ok 174 - Check hashref getter ok 175 - Check hashref setter ok 176 - Check hashref getter again ok 177 - Get code ok 178 - Check coderef alias ok 179 - Check closure alias ok 180 - Check code key ok 181 - Check code name ok 182 - Check code check ok 183 - Check code code ok 184 - Create foo11 attribute ok 185 - Make simple coderef set ok 186 - Coderef accessor exists ok 187 - Set coderef value ok 188 - Check coderef value ok 189 - Got invalid coderef error ok 190 - correct coderef exception ok 191 - Check coderef attr_set ok 192 - Check coderef attr_get ok 193 - Check coderef getter ok 194 - Check coderef setter ok 195 - Check coderef getter again ok t\chk_types_affordance...........1..208 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Create Class::Meta object ok 8 - Get string ok 9 - Check lc conversion on key ok 10 - Check string key ok 11 - Check string name ok 12 - Check string check ok 13 - Check string code ok 14 - Create foo1 attribute ok 15 - Make simple string set ok 16 - String mutator exists ok 17 - String getter exists ok 18 - Set string value ok 19 - Check string value ok 20 - Got invalid string error ok 21 - correct string exception ok 22 - Check string attr_set ok 23 - Check string attr_get ok 24 - Check string getter ok 25 - Check string setter ok 26 - Check string getter again ok 27 - Get boolean ok 28 - Check bool alias ok 29 - Check boolean key ok 30 - Check boolean name ok 31 - Check boolean check ok 32 - Create foo2 attribute ok 33 - Make simple boolean set ok 34 - Boolean on mutator exists ok 35 - Boolean off mutator exists ok 36 - Boolean mutator exists ok 37 - Set boolean value on ok 38 - Check boolean value on ok 39 - Check boolean value off ok 40 - Check boolean attr_set ok 41 - Check boolean attr_get ok 42 - Check boolean getter ok 43 - Check boolean getter again ok 44 - Get whole ok 45 - Check whole key ok 46 - Check whole name ok 47 - Check whole check ok 48 - Check whole code ok 49 - Create foo3 attribute ok 50 - Make simple whole set ok 51 - Whole mutator exists ok 52 - Whole getter exists ok 53 - Set whole value ok 54 - Check whole value ok 55 - Got invalid whole error ok 56 - correct whole exception ok 57 - Check whole attr_set ok 58 - Check whole attr_get ok 59 - Check whole getter ok 60 - Check whole setter ok 61 - Check whole getter again ok 62 - Get integer ok 63 - Check int alias ok 64 - Check integer key ok 65 - Check integer name ok 66 - Check integer check ok 67 - Check integer code ok 68 - Create foo4 attribute ok 69 - Make simple integer set ok 70 - Integer mutator exists ok 71 - Integer getter exists ok 72 - Set integer value ok 73 - Check integer value ok 74 - Got invalid integer error ok 75 - correct integer exception ok 76 - Check integer attr_set ok 77 - Check integer attr_get ok 78 - Check integer getter ok 79 - Check integer setter ok 80 - Check integer getter again ok 81 - Get decimal ok 82 - Check dec alias ok 83 - Check decimal key ok 84 - Check decimal name ok 85 - Check decimal check ok 86 - Check decimal code ok 87 - Create foo5 attribute ok 88 - Make simple decimal set ok 89 - Decimal mutator exists ok 90 - Decimal getter exists ok 91 - Set decimal value ok 92 - Check decimal value ok 93 - Got invalid decimal error ok 94 - correct decimal exception ok 95 - Check decimal attr_set ok 96 - Check decimal attr_get ok 97 - Check decimal getter ok 98 - Check decimal setter ok 99 - Check decimal getter again ok 100 - Get float ok 101 - Check float key ok 102 - Check float name ok 103 - Check float check ok 104 - Check float code ok 105 - Create foo6 attribute ok 106 - Make simple float set ok 107 - Float mutator exists ok 108 - Float getter exists ok 109 - Set float value ok 110 - Check float value ok 111 - Got invalid float error ok 112 - correct float exception ok 113 - Check float attr_set ok 114 - Check float attr_get ok 115 - Check float getter ok 116 - Check float setter ok 117 - Check float getter again ok 118 - Get scalar ok 119 - Check scalar key ok 120 - Check scalar name ok 121 - Check scalar check ok 122 - Create foo7 attribute ok 123 - Make simple scalar set ok 124 - Scalar mutator exists ok 125 - Scalar getter exists ok 126 - Set scalar value ok 127 - Check scalar value ok 128 - Check scalar attr_set ok 129 - Check scalar attr_get ok 130 - Check scalar getter ok 131 - Check scalar setter ok 132 - Check scalar getter again ok 133 - Get scalar ref ok 134 - Check scalar ref key ok 135 - Check scalar ref name ok 136 - Check scalar ref check ok 137 - Check scalar ref code ok 138 - Create foo8 attribute ok 139 - Make simple scalarref set ok 140 - Scalarref mutator exists ok 141 - Scalarref getter exists ok 142 - Set scalarref value ok 143 - Check scalarref value ok 144 - Got invalid scalarref error ok 145 - correct scalarref exception ok 146 - Check scalarref attr_set ok 147 - Check scalarref attr_get ok 148 - Check scalarref getter ok 149 - Check scalarref setter ok 150 - Check scalarref getter again ok 151 - Get array ok 152 - Check arrayref alias ok 153 - Check array key ok 154 - Check array name ok 155 - Check array check ok 156 - Check array code ok 157 - Create foo9 attribute ok 158 - Make simple arrayref set ok 159 - Arrayref mutator exists ok 160 - Arrayref getter exists ok 161 - Set arrayref value ok 162 - Check arrayref value ok 163 - Got invalid arrayref error ok 164 - correct arrayref exception ok 165 - Check arrayref attr_set ok 166 - Check arrayref attr_get ok 167 - Check arrayref getter ok 168 - Check arrayref setter ok 169 - Check arrayref getter again ok 170 - Get hash ok 171 - Check hashref alias ok 172 - Check hash key ok 173 - Check hash name ok 174 - Check hash check ok 175 - Check hash code ok 176 - Create foo10 attribute ok 177 - Make simple hashref set ok 178 - Hashref mutator exists ok 179 - Hashref getter exists ok 180 - Set hashref value ok 181 - Check hashref value ok 182 - Got invalid hashref error ok 183 - correct hashref exception ok 184 - Check hashref attr_set ok 185 - Check hashref attr_get ok 186 - Check hashref getter ok 187 - Check hashref setter ok 188 - Check hashref getter again ok 189 - Get code ok 190 - Check coderef alias ok 191 - Check closure alias ok 192 - Check code key ok 193 - Check code name ok 194 - Check code check ok 195 - Check code code ok 196 - Create foo11 attribute ok 197 - Make simple coderef set ok 198 - Coderef mutator exists ok 199 - Coderef getter exists ok 200 - Set coderef value ok 201 - Check coderef value ok 202 - Got invalid coderef error ok 203 - correct coderef exception ok 204 - Check coderef attr_set ok 205 - Check coderef attr_get ok 206 - Check coderef getter ok 207 - Check coderef setter ok 208 - Check coderef getter again ok t\chk_types_semi_affordance......1..208 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Create Class::Meta object ok 8 - Get string ok 9 - Check lc conversion on key ok 10 - Check string key ok 11 - Check string name ok 12 - Check string check ok 13 - Check string code ok 14 - Create foo1 attribute ok 15 - Make simple string set ok 16 - String mutator exists ok 17 - String getter exists ok 18 - Set string value ok 19 - Check string value ok 20 - Got invalid string error ok 21 - correct string exception ok 22 - Check string attr_set ok 23 - Check string attr_get ok 24 - Check string getter ok 25 - Check string setter ok 26 - Check string getter again ok 27 - Get boolean ok 28 - Check bool alias ok 29 - Check boolean key ok 30 - Check boolean name ok 31 - Check boolean check ok 32 - Create foo2 attribute ok 33 - Make simple boolean set ok 34 - Boolean on mutator exists ok 35 - Boolean off mutator exists ok 36 - Boolean mutator exists ok 37 - Set boolean value on ok 38 - Check boolean value on ok 39 - Check boolean value off ok 40 - Check boolean attr_set ok 41 - Check boolean attr_get ok 42 - Check boolean getter ok 43 - Check boolean getter again ok 44 - Get whole ok 45 - Check whole key ok 46 - Check whole name ok 47 - Check whole check ok 48 - Check whole code ok 49 - Create foo3 attribute ok 50 - Make simple whole set ok 51 - Whole mutator exists ok 52 - Whole getter exists ok 53 - Set whole value ok 54 - Check whole value ok 55 - Got invalid whole error ok 56 - correct whole exception ok 57 - Check whole attr_set ok 58 - Check whole attr_get ok 59 - Check whole getter ok 60 - Check whole setter ok 61 - Check whole getter again ok 62 - Get integer ok 63 - Check int alias ok 64 - Check integer key ok 65 - Check integer name ok 66 - Check integer check ok 67 - Check integer code ok 68 - Create foo4 attribute ok 69 - Make simple integer set ok 70 - Integer mutator exists ok 71 - Integer getter exists ok 72 - Set integer value ok 73 - Check integer value ok 74 - Got invalid integer error ok 75 - correct integer exception ok 76 - Check integer attr_set ok 77 - Check integer attr_get ok 78 - Check integer getter ok 79 - Check integer setter ok 80 - Check integer getter again ok 81 - Get decimal ok 82 - Check dec alias ok 83 - Check decimal key ok 84 - Check decimal name ok 85 - Check decimal check ok 86 - Check decimal code ok 87 - Create foo5 attribute ok 88 - Make simple decimal set ok 89 - Decimal mutator exists ok 90 - Decimal getter exists ok 91 - Set decimal value ok 92 - Check decimal value ok 93 - Got invalid decimal error ok 94 - correct decimal exception ok 95 - Check decimal attr_set ok 96 - Check decimal attr_get ok 97 - Check decimal getter ok 98 - Check decimal setter ok 99 - Check decimal getter again ok 100 - Get float ok 101 - Check float key ok 102 - Check float name ok 103 - Check float check ok 104 - Check float code ok 105 - Create foo6 attribute ok 106 - Make simple float set ok 107 - Float mutator exists ok 108 - Float getter exists ok 109 - Set float value ok 110 - Check float value ok 111 - Got invalid float error ok 112 - correct float exception ok 113 - Check float attr_set ok 114 - Check float attr_get ok 115 - Check float getter ok 116 - Check float setter ok 117 - Check float getter again ok 118 - Get scalar ok 119 - Check scalar key ok 120 - Check scalar name ok 121 - Check scalar check ok 122 - Create foo7 attribute ok 123 - Make simple scalar set ok 124 - Scalar mutator exists ok 125 - Scalar getter exists ok 126 - Set scalar value ok 127 - Check scalar value ok 128 - Check scalar attr_set ok 129 - Check scalar attr_get ok 130 - Check scalar getter ok 131 - Check scalar setter ok 132 - Check scalar getter again ok 133 - Get scalar ref ok 134 - Check scalar ref key ok 135 - Check scalar ref name ok 136 - Check scalar ref check ok 137 - Check scalar ref code ok 138 - Create foo8 attribute ok 139 - Make simple scalarref set ok 140 - Scalarref mutator exists ok 141 - Scalarref getter exists ok 142 - Set scalarref value ok 143 - Check scalarref value ok 144 - Got invalid scalarref error ok 145 - correct scalarref exception ok 146 - Check scalarref attr_set ok 147 - Check scalarref attr_get ok 148 - Check scalarref getter ok 149 - Check scalarref setter ok 150 - Check scalarref getter again ok 151 - Get array ok 152 - Check arrayref alias ok 153 - Check array key ok 154 - Check array name ok 155 - Check array check ok 156 - Check array code ok 157 - Create foo9 attribute ok 158 - Make simple arrayref set ok 159 - Arrayref mutator exists ok 160 - Arrayref getter exists ok 161 - Set arrayref value ok 162 - Check arrayref value ok 163 - Got invalid arrayref error ok 164 - correct arrayref exception ok 165 - Check arrayref attr_set ok 166 - Check arrayref attr_get ok 167 - Check arrayref getter ok 168 - Check arrayref setter ok 169 - Check arrayref getter again ok 170 - Get hash ok 171 - Check hashref alias ok 172 - Check hash key ok 173 - Check hash name ok 174 - Check hash check ok 175 - Check hash code ok 176 - Create foo10 attribute ok 177 - Make simple hashref set ok 178 - Hashref mutator exists ok 179 - Hashref getter exists ok 180 - Set hashref value ok 181 - Check hashref value ok 182 - Got invalid hashref error ok 183 - correct hashref exception ok 184 - Check hashref attr_set ok 185 - Check hashref attr_get ok 186 - Check hashref getter ok 187 - Check hashref setter ok 188 - Check hashref getter again ok 189 - Get code ok 190 - Check coderef alias ok 191 - Check closure alias ok 192 - Check code key ok 193 - Check code name ok 194 - Check code check ok 195 - Check code code ok 196 - Create foo11 attribute ok 197 - Make simple coderef set ok 198 - Coderef mutator exists ok 199 - Coderef getter exists ok 200 - Set coderef value ok 201 - Check coderef value ok 202 - Got invalid coderef error ok 203 - correct coderef exception ok 204 - Check coderef attr_set ok 205 - Check coderef attr_get ok 206 - Check coderef getter ok 207 - Check coderef setter ok 208 - Check coderef getter again ok t\class..........................1..13 ok 1 - use Class::Meta; ok 2 - Error creating class ok 3 - Check error message ok 4 - Subclass can create class objects ok 5 - name ok 6 - desc ok 7 - key ok 8 - Create Class ok 9 - Retrieve class ok 10 - The object isa Class::Meta::Class::Sub ok 11 - The object isa Class::Meta::Class ok 12 - Check an attibute ok 13 - Check added attribute ok t\constraints....................1..24 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::String; ok 3 - Create new Class::Meta object ok 4 - Add constructor ok 5 - Add required attribute with a default ok 6 - Add a once attribute ok 7 - Add a once attribute ok 8 - Add a required once attribute ok 9 - Build class ok 10 - Create new object ok 11 - Check required attribute ok 12 - Set required attribute ok 13 - Check required attribute new value ok 14 - Catch required exception ok 15 - Once is undefined ok 16 - set once attribute ok 17 - Check new once value ok 18 - Catch once exception ok 19 - Check once_def ok 20 - Catch once_def exception ok 21 - Check once_def hasn't changed ok 22 - Check once_req ok 23 - Catch once_req exception ok 24 - Check once_req hasn't changed ok t\constraints_affordance.........1..22 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::String; ok 3 - Create new Class::Meta object ok 4 - Add constructor ok 5 - Add required attribute with a default ok 6 - Add a once attribute ok 7 - Add a once attribute ok 8 - Add a required once attribute ok 9 - Build class ok 10 - Create new object ok 11 - Check required attribute ok 12 - Set required attribute ok 13 - Check required attribute new value ok 14 - Catch required exception ok 15 - Once is undefined ok 16 - set once attribute ok 17 - Check new once value ok 18 - Catch once exception ok 19 - Check once_def ok 20 - Catch once_def exception ok 21 - Check once_req ok 22 - Catch once_req exception ok t\constraints_semi_affordance....1..22 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::String; ok 3 - Create new Class::Meta object ok 4 - Add constructor ok 5 - Add required attribute with a default ok 6 - Add a once attribute ok 7 - Add a once attribute ok 8 - Add a required once attribute ok 9 - Build class ok 10 - Create new object ok 11 - Check required attribute ok 12 - Set required attribute ok 13 - Check required attribute new value ok 14 - Catch required exception ok 15 - Once is undefined ok 16 - set once attribute ok 17 - Check new once value ok 18 - Catch once exception ok 19 - Check once_def ok 20 - Catch once_def exception ok 21 - Check once_req ok 22 - Catch once_req exception ok t\ctor...........................1..55 ok 1 - use Class::Meta; ok 2 - Create CM object ok 3 - The object isa Class::Meta ok 4 - Create 'inst' ctor ok 5 - The object isa Class::Meta::Constructor ok 6 - Check inst name ok 7 - Check inst desc ok 8 - Check inst label ok 9 - Check inst view ok 10 - The object isa Class::Meta::TestPerson ok 11 - Get constructor construction exception ok 12 - Caught proper exception ok 13 - Caught no name exception ok 14 - Caught proper no name exception ok 15 - Caught dupe name exception ok 16 - Caught proper dupe name exception ok 17 - Caught bogus view exception ok 18 - Caught proper bogus view exception ok 19 - Caught another bogus view exception ok 20 - Caught another proper bogus view exception ok 21 - Caught bogus caller exception ok 22 - Caught proper bogus caller exception ok 23 - Create 'new_ctor' ok 24 - The object isa Class::Meta::Constructor ok 25 - Check new_ctor name ok 26 - Check new_ctor desc ok 27 - Check new_ctor label ok 28 - Check new_ctor view ok 29 - Call the new_ctor constructor indirectly ok 30 - Create subclassed CM object ok 31 - The object isa Class::Meta ok 32 - The object isa Class::Meta::SubClass ok 33 - Create subclassed foo_ctor ok 34 - The object isa Class::Meta::Constructor ok 35 - Check new foo_ctor name ok 36 - Check new foo_ctor desc ok 37 - Check new foo_ctor label ok 38 - Check new foo_ctor view ok 39 - The object isa Class::Meta::AnotherTest ok 40 - Create Class ok 41 - Add foo constructor ok 42 - The object isa Class::Meta::Constructor::Sub ok 43 - The object isa Class::Meta::Constructor ok 44 - Check an attibute ok 45 - Check added attibute ok 46 - Create new Class::Meta object ok 47 - Add a constructor ok 48 - Implicitly write constructor ok 49 - Add "foo" attribute ok 50 - Add "bar" attribute ok 51 - Build the new class ok 52 - Construct an instance of the new class ok 53 - "bar" should be "set" ok 54 - "foo" should be "hey" ok 55 ok t\custom_type_maker..............1..102 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - Create Class::Meta object ok 4 - Create Homer data type ok 5 - Check lc conversion on key ok 6 - Check homer key ok 7 - Check homer name ok 8 - Check homer checker ok 9 - Create foo1 attribute ok 10 - Make simple homer set ok 11 - homer accessor exists ok 12 - Set homer value ok 13 - Check homer value ok 14 - Check homer attr_set ok 15 - Check homer attr_get ok 16 - Check homer getter ok 17 - Check homer setter ok 18 - Check homer getter again ok 19 - Create Bart data type ok 20 - Check lc conversion on key ok 21 - Check bart key ok 22 - Check bart name ok 23 - Check bart checker ok 24 - Create foo2 attribute ok 25 - Make simple bart set ok 26 - bart accessor exists ok 27 - Set bart value ok 28 - Check bart value ok 29 - Check bart attr_set ok 30 - Check bart attr_get ok 31 - Check bart getter ok 32 - Check bart setter ok 33 - Check bart getter again ok 34 - Create Marge data type ok 35 - Check lc conversion on key ok 36 - Check marge key ok 37 - Check marge name ok 38 - Check marge code ok 39 - Create foo3 attribute ok 40 - Make simple marge set ok 41 - marge accessor exists ok 42 - Set marge value ok 43 - Check marge value ok 44 - Got invalid marge error ok 45 - correct marge exception ok 46 - Check marge attr_set ok 47 - Check marge attr_get ok 48 - Check marge getter ok 49 - Check marge setter ok 50 - Check marge getter again ok 51 - Create Lisa data type ok 52 - Check lc conversion on key ok 53 - Check lisa key ok 54 - Check lisa name ok 55 - Check lisa checker ok 56 - Create foo4 attribute ok 57 - Make simple lisa set ok 58 - Lisa mutator exists ok 59 - Lisa getter exists ok 60 - Set lisa value ok 61 - Check lisa value ok 62 - Check lisa attr_set ok 63 - Check lisa attr_get ok 64 - Check lisa getter ok 65 - Check lisa setter ok 66 - Check lisa getter again ok 67 - Create Maggie data type ok 68 - Check lc conversion on key ok 69 - Check maggie key ok 70 - Check maggie name ok 71 - Check maggie code ok 72 - Create foo5 attribute ok 73 - Make simple maggie set ok 74 - Maggie mutator exists ok 75 - Maggie getter exists ok 76 - Set maggie value ok 77 - Check maggie value ok 78 - Got invalid maggie error ok 79 - correct maggie exception ok 80 - Check maggie attr_set ok 81 - Check maggie attr_get ok 82 - Check maggie getter ok 83 - Check maggie setter ok 84 - Check maggie getter again ok 85 - Create FooBar data type ok 86 - Check foobar check ok 87 - Check foobar code ok 88 - Create BarGoo data type ok 89 - Check bargoo check ok 90 - Check bargoo code ok 91 - Create Doh data type ok 92 - Check doh check ok 93 - Check doh code ok 94 - Check doh code ok 95 - Error for bogus check ok 96 - Proper error for bogus check ok 97 - Error for missing key ok 98 - Proper error for missing key ok 99 - Error for missing name ok 100 - Proper error for missing name ok 101 - Error for duplicate key ok 102 - Proper error for duplicate key ok t\errors.........................1..208 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::String; ok 3 - Caught odd number to Class::Meta->new error ok 4 - Correct error ok 5 - Correct context ok 6 - Not incorrect context ok 7 - Caught Attribute->new protected error ok 8 - Correct error ok 9 - Correct context ok 10 - Not incorrect context ok 11 - Caught odd number to Class::Meta::Attribute->new error ok 12 - Correct error ok 13 - Correct context ok 14 - Not incorrect context ok 15 - Caught Attribute name required error ok 16 - Correct error ok 17 - Correct context ok 18 - Not incorrect context ok 19 - Caught Invalid attribute name error ok 20 - Correct error ok 21 - Correct context ok 22 - Not incorrect context ok 23 - Create 'foo' attribute ok 24 - Caught Attribute exists error ok 25 - Correct error ok 26 - Correct context ok 27 - Not incorrect context ok 28 - Caught Invalid Attribute view error ok 29 - Correct error ok 30 - Correct context ok 31 - Not incorrect context ok 32 - Caught Invalid Attribute authz error ok 33 - Correct error ok 34 - Correct context ok 35 - Not incorrect context ok 36 - Caught Invalid Attribute create error ok 37 - Correct error ok 38 - Correct context ok 39 - Not incorrect context ok 40 - Caught Invalid Attribute context error ok 41 - Correct error ok 42 - Correct context ok 43 - Not incorrect context ok 44 - Caught No attribute get method error ok 45 - Correct error ok 46 - Correct context ok 47 - Not incorrect context ok 48 - Caught No attribute set method error ok 49 - Correct error ok 50 - Correct context ok 51 - Not incorrect context ok 52 - Caught Attribute->build protected error ok 53 - Correct error ok 54 - Correct context ok 55 - Not incorrect context ok 56 - Caught Class->new protected error ok 57 - Correct error ok 58 - Correct context ok 59 - Not incorrect context ok 60 - Caught Duplicate class error ok 61 - Correct error ok 62 - Correct context ok 63 - Not incorrect context ok 64 - Caught Class->build protected error ok 65 - Correct error ok 66 - Correct context ok 67 - Not incorrect context ok 68 - Caught Constructor->new protected error ok 69 - Correct error ok 70 - Correct context ok 71 - Not incorrect context ok 72 - Caught odd number to Class::Meta::Constructor->new error ok 73 - Correct error ok 74 - Correct context ok 75 - Not incorrect context ok 76 - Caught Constructor name required error ok 77 - Correct error ok 78 - Correct context ok 79 - Not incorrect context ok 80 - Caught Invalid constructor name error ok 81 - Correct error ok 82 - Correct context ok 83 - Not incorrect context ok 84 - Create 'newer' constructor ok 85 - Caught Constructor exists error ok 86 - Correct error ok 87 - Correct context ok 88 - Not incorrect context ok 89 - Caught Invalid Constructor view error ok 90 - Correct error ok 91 - Correct context ok 92 - Not incorrect context ok 93 - Caught Invalid Constructor caller error ok 94 - Correct error ok 95 - Correct context ok 96 - Not incorrect context ok 97 - Caught Cannot call constructor error ok 98 - Correct error ok 99 - Correct context ok 100 - Not incorrect context ok 101 - Caught Constructor->build protected error ok 102 - Correct error ok 103 - Correct context ok 104 - Not incorrect context ok 105 - Caught Invalid parameter to generated constructor error ok 106 - Correct error ok 107 - Correct context ok 108 - Not incorrect context ok 109 - Caught Method->new protected error ok 110 - Correct error ok 111 - Correct context ok 112 - Not incorrect context ok 113 - Caught odd number to Class::Meta::Method->new error ok 114 - Correct error ok 115 - Correct context ok 116 - Not incorrect context ok 117 - Caught Method name required error ok 118 - Correct error ok 119 - Correct context ok 120 - Not incorrect context ok 121 - Caught Invalid method name error ok 122 - Correct error ok 123 - Correct context ok 124 - Not incorrect context ok 125 - Create 'hail' method ok 126 - Caught Method exists error ok 127 - Correct error ok 128 - Correct context ok 129 - Not incorrect context ok 130 - Caught Invalid Method view error ok 131 - Correct error ok 132 - Correct context ok 133 - Not incorrect context ok 134 - Caught Invalid Method context error ok 135 - Correct error ok 136 - Correct context ok 137 - Not incorrect context ok 138 - Caught Invalid Method caller error ok 139 - Correct error ok 140 - Correct context ok 141 - Not incorrect context ok 142 - Caught Cannot call method error ok 143 - Correct error ok 144 - Correct context ok 145 - Not incorrect context ok 146 - Caught Missing type error ok 147 - Correct error ok 148 - Correct context ok 149 - Not incorrect context ok 150 - Caught Invalid type error ok 151 - Correct error ok 152 - Correct context ok 153 - Not incorrect context ok 154 - Caught Type key required error ok 155 - Correct error ok 156 - Correct context ok 157 - Not incorrect context ok 158 - Caught Type name required error ok 159 - Correct error ok 160 - Correct context ok 161 - Not incorrect context ok 162 - Caught Type already exists error ok 163 - Correct error ok 164 - Correct context ok 165 - Not incorrect context ok 166 - Caught Invalid type check error ok 167 - Correct error ok 168 - Correct context ok 169 - Not incorrect context ok 170 - Caught Invalid type check array error ok 171 - Correct error ok 172 - Correct context ok 173 - Not incorrect context ok 174 - Caught No build error ok 175 - Correct error ok 176 - Correct context ok 177 - Not incorrect context ok 178 - Caught No attr get error ok 179 - Correct error ok 180 - Correct context ok 181 - Not incorrect context ok 182 - Caught No attr set error ok 183 - Correct error ok 184 - Correct context ok 185 - Not incorrect context ok 186 - Caught Type->build protected error ok 187 - Correct error ok 188 - Correct context ok 189 - Not incorrect context ok 190 - Caught Bad error handler error ok 191 - Correct error ok 192 - Correct context ok 193 - Not incorrect context ok 194 - Caught Class cannot have invalid error handler error ok 195 - Correct error ok 196 - Correct context ok 197 - Not incorrect context ok 198 - New error handler ok 199 - Caught Class->build still protected error ok 200 - Correct error ok 201 - Correct context ok 202 - Not incorrect context ok 203 - Testing class isn't abstract ok 204 - TestAbstract class isn't abstract ok 205 - Caught Cannot create from abstract class error ok 206 - Correct error ok 207 - Correct context ok 208 - Not incorrect context ok t\implicit_class_types...........1..28 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - Create TestTypes CM object ok 4 - Create TestTypes constctor ok 5 - Build TestTypes ok 6 - Create Another CM object ok 7 - Create Another constctor ok 8 - Add "types" attribute ok 9 - Build Another ok 10 - Replace class type check generator ok 11 - Class::Meta::Type->can('default_builder') ok 12 - Make affordance accessors for YetAnother objects ok 13 - Create YetAnother CM object ok 14 - Create Another constctor ok 15 - Add "another" attribute ok 16 - Build YetAnother ok 17 - Create Another object ok 18 - The object isa Class::Meta::TestTypes ok 19 - Replace TestTypes object ok 20 - The object isa Class::Meta::TestTypes ok 21 - Catch TestTypes exception ok 22 - Check TestTypes exception string ok 23 - Create YetAnother object ok 24 - The object isa Class::Meta::Another ok 25 - Check for undef error ok 26 - Catch Another exception ok 27 - Check Another exception string ok 28 - Check for defined error ok t\inherit........................1..129 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::Numeric; ok 3 - use Class::Meta::Types::String; ok 4 - Create One's Class::Meta ok 5 - Create One's construtor ok 6 - Create One's ID attribute ok 7 - Create One's name attribute ok 8 - Create One's count attribute ok 9 - Add foo method to One ok 10 - Add bar method to One ok 11 - Build Test::One ok 12 - use Class::Meta; ok 13 - Create Two's Class::Meta ok 14 - Create Two's ctor ok 15 - Create Two's description attribute ok 16 - Catch duplicate attribute exception ok 17 - Check error message ok 18 - Add woah method to One ok 19 - Add bar method to Two ok 20 - Build Test::Two ok 21 - Get One's Class object ok 22 - The object isa Class::Meta::Class ok 23 - Check it's for Test::One ok 24 - Check it's not for Test::Two ok 25 - Check that One has no parents ok 26 - Get attributes ok 27 - Check for three attributes ok 28 - Check for id attribute ok 29 - Check for name attribute ok 30 - Check for count attribute ok 31 - Get Two's Class object ok 32 - The object isa Class::Meta::Class ok 33 - Check it's for Test::One ok 34 - Check it's for Test::Two ok 35 - Check that Two has One for a parent ok 36 - Get attributes ok 37 - Check for four attributes ok 38 - Check for id attribute ok 39 - Check for same id as One ok 40 - Check for name attribute ok 41 - Check for different name than One ok 42 - Check for overridden name ok 43 - Check for count attribute ok 44 - Check for same count as One ok 45 - Check for description attribute ok 46 - Construct One object ok 47 - The object isa Test::One ok 48 - Catch bad One parameter exception ok 49 - Check bad One exception ok 50 - Get one's new object ok 51 - Create new one indirectly ok 52 - The object isa Test::One ok 53 - Check One's name ok 54 - Set One's name ok 55 - Check One's new name ok 56 - Check One's id ok 57 - Check for set_id exception ok 58 - Check attr call id ok 59 - Call set on One ok 60 - Call get on One ok 61 - Check One->foo ok 62 - Check One->bar ok 63 - Catch One->woah exception ok 64 - Get foo method object ok 65 - Check One foo's package ok 66 - Check One foo's call ok 67 - Get bar method object ok 68 - Check One bar's package ok 69 - Check One bar's call ok 70 - Construct Two object ok 71 - The object isa Test::Two ok 72 - Construct another Two object ok 73 - The object isa Test::Two ok 74 - Get two's new object ok 75 - Check for the same new as in one ok 76 - Create new two indirectly ok 77 - The object isa Test::Two ok 78 - Construct another Two object ok 79 - The object isa Test::Two ok 80 - Check Two's id ok 81 - Check for set_id exception ok 82 - Check Two's name ok 83 - Set Two's name ok 84 - Check Two's new name ok 85 - Check Two's count ok 86 - Set Two's count ok 87 - Check Two's new count ok 88 - Check Two's description ok 89 - Set Two's description ok 90 - Check Two's new description ok 91 - Check attr call id ok 92 - Call get name on Two ok 93 - Call set name on Two ok 94 - Call get name on Two again ok 95 - Call get count on Two ok 96 - Call set count on Two ok 97 - Call get count on Two again ok 98 - Call get on Two ok 99 - Call set on Two ok 100 - Call get on Two again ok 101 - Check one get_count ok 102 - Check two get_count ok 103 - Check Test::One get_count ok 104 - Check Test::Two get_count ok 105 - Set One count ok 106 - Check one get_count again ok 107 - Check two get_count again ok 108 - Check Test::One get_count again ok 109 - Check Test::Two get_count again ok 110 - Set $one count ok 111 - Check one get_count three ok 112 - Check two get_count three ok 113 - Check Test::One get_count three ok 114 - Check Test::Two get_count three ok 115 - Check Two->foo ok 116 - Check Two->bar ok 117 - Check Two->woah ok 118 - Check Two->foo ok 119 - Check Two->bar ok 120 - Check Two->woah ok 121 - Get foo method object ok 122 - Check Two foo's package ok 123 - Check Two foo's call ok 124 - Get bar method object ok 125 - Check Two bar's package ok 126 - Check Two bar's call ok 127 - Get woah method object ok 128 - Check Two woah's package ok 129 - Check Two woah's call ok t\meth...........................1..54 ok 1 - use Class::Meta; ok 2 - Create CM object ok 3 - The object isa Class::Meta ok 4 - Create foo_meth ok 5 - The object isa Class::Meta::Method ok 6 - Check foo_meth name ok 7 - Check foo_meth desc ok 8 - Check foo_meth label ok 9 - Check foo_meth view ok 10 - Check foo_meth context ok 11 - Call the foo_meth method ok 12 - Get method construction exception ok 13 - Caught proper exception ok 14 - Caught no name exception ok 15 - Caught proper no name exception ok 16 - Caught dupe name exception ok 17 - Caught proper dupe name exception ok 18 - Caught another bogus view exception ok 19 - Caught another proper bogus view exception ok 20 - Caught another bogus context exception ok 21 - Caught another proper bogus context exception ok 22 - Caught bogus caller exception ok 23 - Caught proper bogus caller exception ok 24 - Create 'new_meth' ok 25 - The object isa Class::Meta::Method ok 26 - Check new_meth name ok 27 - Check new_meth desc ok 28 - Check new_meth label ok 29 - Check new_meth view ok 30 - Check new_meth context ok 31 - Call the new_meth method ok 32 - Define a method ok 33 - The object isa Class::Meta::Method ok 34 - Build the class ok 35 - Class::Meta::TestPerson->can('implicit') ok 36 - It should be the method we installed ok 37 - and we should be able to call it indirectly ok 38 - Create subclassed CM object ok 39 - The object isa Class::Meta ok 40 - The object isa Class::Meta::SubClass ok 41 - Create subclassed foo_meth ok 42 - The object isa Class::Meta::Method ok 43 - Check new foo_meth name ok 44 - Check new foo_meth desc ok 45 - Check new foo_meth label ok 46 - Check new foo_meth view ok 47 - Check new foo_meth context ok 48 - Call the new foo_meth method ok 49 - Create Class ok 50 - Add foo method ok 51 - The object isa Class::Meta::Method::Sub ok 52 - The object isa Class::Meta::Method ok 53 - Check an attibute ok 54 - Check added attibute ok t\pod-coverage...................1..0 # Skip Test::Pod::Coverage required for testing POD coverage skipped all skipped: Test::Pod::Coverage required for testing POD coverage t\pod............................1..13 ok 1 - blib\lib\Class\Meta.pm ok 2 - blib\lib\Class\Meta\AccessorBuilder.pm ok 3 - blib\lib\Class\Meta\Attribute.pm ok 4 - blib\lib\Class\Meta\Class.pm ok 5 - blib\lib\Class\Meta\Constructor.pm ok 6 - blib\lib\Class\Meta\Method.pm ok 7 - blib\lib\Class\Meta\Type.pm ok 8 - blib\lib\Class\Meta\AccessorBuilder\Affordance.pm ok 9 - blib\lib\Class\Meta\AccessorBuilder\SemiAffordance.pm ok 10 - blib\lib\Class\Meta\Types\Boolean.pm ok 11 - blib\lib\Class\Meta\Types\Numeric.pm ok 12 - blib\lib\Class\Meta\Types\Perl.pm ok 13 - blib\lib\Class\Meta\Types\String.pm ok t\types..........................1..60 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Class::Meta::TestTypes->new ok 8 - Get the Class::Meta::Class object ok 9 - Class isa TestTypes ok 10 - Key is correct ok 11 - Name is correct ok 12 - Description is correct ok 13 - name to "David" ok 14 - name is "David" ok 15 - name to array ref croaks ok 16 - correct string exception ok 17 - alive true ok 18 - alive off ok 19 - alive false ok 20 - alive on ok 21 - alive true again ok 22 - Get alive attribute object ok 23 - Check that the alias was converted ok 24 - Check that is('boolean') returns true ok 25 - Check that is('string') returns false ok 26 # skip Whole numbers can now be 0 ok 27 # skip Whole numbers can now be 0 ok 28 - whole to 1. ok 29 - age to 0.5 croaks ok 30 - correct integer exception ok 31 - age to 10. ok 32 - dec to "+" croaks ok 33 - correct decimal exception ok 34 - dec to 3.14. ok 35 - real to "+" croaks ok 36 - correct real exception ok 37 - real to 123.4567. ok 38 - real to -123.4567. ok 39 - float to "+" croaks ok 40 - correct float exception ok 41 - float to 1.23e99. ok 42 - simpson ok 43 - The object isa Simpson ok 44 - simpson to "foo" croaks ok 45 - correct object exception ok 46 - simpson to \$fh croaks ok 47 - correct object exception ok 48 - simpson to \$simpson. ok 49 - Set simpson to a subclass. ok 50 - Check subclass isa Bart ok 51 - simpson to \$simpson. ok 52 - scalar to "foo" croaks ok 53 - correct scalar exception ok 54 - scalar to \"foo". ok 55 - array to "foo" croaks ok 56 - correct array exception ok 57 - array to ["foo"]. ok 58 - hash to "foo" croaks ok 59 - correct hash exception ok 60 - hash to { foo => 1 }. ok 2/60 skipped: various reasons t\types_affordance...............1..56 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Class::Meta::TestTypes->new ok 8 - Get the Class::Meta::Class object ok 9 - Class isa TestTypes ok 10 - Key is correct ok 11 - Name is correct ok 12 - Description is correct ok 13 - set_name to "David" ok 14 - get_name is "David" ok 15 - set_name to array ref croaks ok 16 - correct string exception ok 17 - is_alive true ok 18 - set_alive_off ok 19 - is_alive false ok 20 - set_alive_on ok 21 - is_alive true again ok 22 # skip Whole numbers can now be 0 ok 23 # skip Whole numbers can now be 0 ok 24 - set_whole to 1. ok 25 - set_age to 0.5 croaks ok 26 - correct integer exception ok 27 - set_age to 10. ok 28 - set_dec to "+" croaks ok 29 - correct decimal exception ok 30 - set_dec to 3.14. ok 31 - set_real to "+" croaks ok 32 - correct real exception ok 33 - set_real to 123.4567. ok 34 - set_real to -123.4567. ok 35 - set_float to "+" croaks ok 36 - correct float exception ok 37 - set_float to 1.23e99. ok 38 - get_simpson ok 39 - The object isa Simpson ok 40 - set_simpson to "foo" croaks ok 41 - correct object exception ok 42 - set_simpson to \$fh croaks ok 43 - correct object exception ok 44 - set_simpson to \$simpson. ok 45 - Set simpson to a subclass. ok 46 - Check subclass isa Bart ok 47 - set_simpson to \$simpson. ok 48 - set_scalar to "foo" croaks ok 49 - correct scalar exception ok 50 - set_scalar to \"foo". ok 51 - set_array to "foo" croaks ok 52 - correct array exception ok 53 - set_array to ["foo"]. ok 54 - set_hash to "foo" croaks ok 55 - correct hash exception ok 56 - set_hash to { foo => 1 }. ok 2/56 skipped: various reasons t\types_semi_affordance..........1..56 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Type; ok 3 - use Class::Meta::Types::Numeric; ok 4 - use Class::Meta::Types::Perl; ok 5 - use Class::Meta::Types::String; ok 6 - use Class::Meta::Types::Boolean; ok 7 - Class::Meta::TestTypes->new ok 8 - Get the Class::Meta::Class object ok 9 - Class isa TestTypes ok 10 - Key is correct ok 11 - Name is correct ok 12 - Description is correct ok 13 - set_name to "David" ok 14 - name is "David" ok 15 - set_name to array ref croaks ok 16 - correct string exception ok 17 - is_alive true ok 18 - set_alive_off ok 19 - is_alive false ok 20 - set_alive_on ok 21 - is_alive true again ok 22 # skip Whole numbers can now be 0 ok 23 # skip Whole numbers can now be 0 ok 24 - set_whole to 1. ok 25 - set_age to 0.5 croaks ok 26 - correct integer exception ok 27 - set_age to 10. ok 28 - set_dec to "+" croaks ok 29 - correct decimal exception ok 30 - set_dec to 3.14. ok 31 - set_real to "+" croaks ok 32 - correct real exception ok 33 - set_real to 123.4567. ok 34 - set_real to -123.4567. ok 35 - set_float to "+" croaks ok 36 - correct float exception ok 37 - set_float to 1.23e99. ok 38 - simpson ok 39 - The object isa Simpson ok 40 - set_simpson to "foo" croaks ok 41 - correct object exception ok 42 - set_simpson to \$fh croaks ok 43 - correct object exception ok 44 - set_simpson to \$simpson. ok 45 - Set simpson to a subclass. ok 46 - Check subclass isa Bart ok 47 - set_simpson to \$simpson. ok 48 - set_scalar to "foo" croaks ok 49 - correct scalar exception ok 50 - set_scalar to \"foo". ok 51 - set_array to "foo" croaks ok 52 - correct array exception ok 53 - set_array to ["foo"]. ok 54 - set_hash to "foo" croaks ok 55 - correct hash exception ok 56 - set_hash to { foo => 1 }. ok 2/56 skipped: various reasons t\view...........................1..394 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::Numeric; ok 3 - use Class::Meta::Types::String; ok 4 - Create Class::Meta object ok 5 - Add new constructor ok 6 - Add protected constructor ok 7 - Add private constructor ok 8 - Add trusted constructor ok 9 - Add id attribute ok 10 - Add protected name attribute ok 11 - Add private age attribute ok 12 - Add trusted sn attribute ok 13 - Create new object ok 14 - Get class object ok 15 - Call to attributes() should return all attributes ok 16 - Call to constructors() should return all constructors ok 17 - Check default ID ok 18 - Set ID ok 19 - Check 12 ID ok 20 - Get "id" attribute object ok 21 - Check indirect 12 ID ok 22 - Indirectly set ID ok 23 - Check indirect 15 ID ok 24 - Check empty name ok 25 - Set name ok 26 - Check "Larry" name ok 27 - Get "name" attribute object ok 28 - Check indirect "Larry" name ok 29 - Indirectly set name ok 30 - Check indirect "chip" name ok 31 - Check default age ok 32 - Set age ok 33 - Check 42 age ok 34 - Get "age" attribute object ok 35 - Check indirect 12 age ok 36 - Indirectly set age ok 37 - Check indirect 15 age ok 38 - Check empty sn ok 39 - Set sn ok 40 - Check "123456789" sn ok 41 - Get "sn" attribute object ok 42 - Check indirect "123456789" sn ok 43 - Indirectly set sn ok 44 - Check indirect "987654321" sn ok 45 - Create another new object ok 46 - Check 10 ID ok 47 - Check Damian name ok 48 - Check 35 age ok 49 - Check sn is "au" ok 50 - Get "new" constructor object ok 51 - Create another new object ok 52 - Check 10 ID ok 53 - Check Damian name ok 54 - Check 35 age ok 55 - Check sn is "au" ok 56 - Create another prot_new object ok 57 - Check 10 ID ok 58 - Check Damian name ok 59 - Check 35 age ok 60 - Check sn is "au" ok 61 - Get "prot_new" constructor object ok 62 - Create another prot_new object ok 63 - Check 10 ID ok 64 - Check Damian name ok 65 - Check 35 age ok 66 - Check sn is "au" ok 67 - Create another priv_new object ok 68 - Check 10 ID ok 69 - Check Damian name ok 70 - Check 35 age ok 71 - Check sn is "au" ok 72 - Get "priv_new" constructor object ok 73 - Create another priv_new object ok 74 - Check 10 ID ok 75 - Check Damian name ok 76 - Check 35 age ok 77 - Check sn is "au" ok 78 - Create another trust_new object ok 79 - Check 10 ID ok 80 - Check Damian name ok 81 - Check 35 age ok 82 - Check sn is "au" ok 83 - Get "trust_new" constructor object ok 84 - Create another priv_new object ok 85 - Check 10 ID ok 86 - Check Damian name ok 87 - Check 35 age ok 88 - Check sn is "au" ok 89 - Create new Testarama object ok 90 - Get Testarama class object ok 91 - Call to attributes() should return public and protected attrs ok 92 - Call to constructors() should return public and protected ctors ok 93 - Check default ID ok 94 - Set ID ok 95 - Check 12 ID ok 96 - Get "id" attribute object ok 97 - Check indirect 12 ID ok 98 - Indirectly set ID ok 99 - Check indirect 15 ID ok 100 - Check empty name ok 101 - Set name ok 102 - Check Larry name ok 103 - Get "name" attribute object ok 104 - Check indirect "Larry" name ok 105 - Indirectly set name ok 106 - Check indirect "chip" name ok 107 - Caught private exception error ok 108 - Correct error ok 109 - Correct context ok 110 - Not incorrect context ok 111 - Caught private exception again error ok 112 - Correct error ok 113 - Correct context ok 114 - Not incorrect context ok 115 - Get "age" attribute object ok 116 - Caught indirect private exception error ok 117 - Correct error ok 118 - Correct context ok 119 - Not incorrect context ok 120 - Caught another indirect private exception error ok 121 - Correct error ok 122 - Correct context ok 123 - Not incorrect context ok 124 - Caught trusted exception error ok 125 - Correct error ok 126 - Correct context ok 127 - Not incorrect context ok 128 - Caught trusted exception again error ok 129 - Correct error ok 130 - Correct context ok 131 - Not incorrect context ok 132 - Get "sn" attribute object ok 133 - Caught indirect trusted exception error ok 134 - Correct error ok 135 - Correct context ok 136 - Not incorrect context ok 137 - Caught another indirect trusted exception error ok 138 - Correct error ok 139 - Correct context ok 140 - Not incorrect context ok 141 - Create another new object ok 142 - Check 10 ID ok 143 - Check Damian name ok 144 - Caught constructor private exception error ok 145 - Correct error ok 146 - Correct context ok 147 - Not incorrect context ok 148 - Get "new" constructor object ok 149 - Create another new object ok 150 - Check 10 ID ok 151 - Check Damian name ok 152 - Caught indirect constructor private exception error ok 153 - Correct error ok 154 - Correct context ok 155 - Not incorrect context ok 156 - Create another prot_new object ok 157 - Check 10 ID ok 158 - Check Damian name ok 159 - Caught constructor private exception error ok 160 - Correct error ok 161 - Correct context ok 162 - Not incorrect context ok 163 - Get "prot_new" constructor object ok 164 - Create another prot_new object ok 165 - Check 10 ID ok 166 - Check Damian name ok 167 - Caught indirect constructor private exception error ok 168 - Correct error ok 169 - Correct context ok 170 - Not incorrect context ok 171 - Caught priv_new exeption error ok 172 - Correct error ok 173 - Correct context ok 174 - Not incorrect context ok 175 - Get "priv_new" constructor object ok 176 - Caught indirect priv_new exeption error ok 177 - Correct error ok 178 - Correct context ok 179 - Not incorrect context ok 180 - Create new Test object ok 181 - Get Test class object ok 182 - Call to attributes() should return public and trusted attrs ok 183 - Call to attributes() should return public and trusted attrs ok 184 - Call to constructors() should return public and trusted ctors ok 185 - Check default ID ok 186 - Set ID ok 187 - Check 12 ID ok 188 - Get "id" attribute object ok 189 - Check indirect 12 ID ok 190 - Indirectly set ID ok 191 - Check indirect 15 ID ok 192 - Caught protected exception error ok 193 - Correct error ok 194 - Correct context ok 195 - Not incorrect context ok 196 - Caught another protected exception error ok 197 - Correct error ok 198 - Correct context ok 199 - Not incorrect context ok 200 - Get "name" attribute object ok 201 - Caught indirect protected exception error ok 202 - Correct error ok 203 - Correct context ok 204 - Not incorrect context ok 205 - Caught another indirect protected exception error ok 206 - Correct error ok 207 - Correct context ok 208 - Not incorrect context ok 209 - Caught private exception error ok 210 - Correct error ok 211 - Correct context ok 212 - Not incorrect context ok 213 - Caught private exception again error ok 214 - Correct error ok 215 - Correct context ok 216 - Not incorrect context ok 217 - Get "age" attribute object ok 218 - Caught indirect private exception error ok 219 - Correct error ok 220 - Correct context ok 221 - Not incorrect context ok 222 - Caught another indirect private exception error ok 223 - Correct error ok 224 - Correct context ok 225 - Not incorrect context ok 226 - Check empty sn ok 227 - Set sn ok 228 - Check "123456789" sn ok 229 - Get "sn" attribute object ok 230 - Check indirect "123456789" sn ok 231 - Indirectly set sn ok 232 - Check indirect "987654321" sn ok 233 - Create new Testarama object ok 234 - Check empty sn ok 235 - Set sn ok 236 - Check "123456789" sn ok 237 - Get "sn" attribute object ok 238 - Check indirect "123456789" sn ok 239 - Indirectly set sn ok 240 - Check indirect "987654321" sn ok 241 - Create another new object ok 242 - Check 10 ID ok 243 - Check foo sn ok 244 - Caught constructor private exception error ok 245 - Correct error ok 246 - Correct context ok 247 - Not incorrect context ok 248 - Caught constructor protected exception error ok 249 - Correct error ok 250 - Correct context ok 251 - Not incorrect context ok 252 - Get "new" constructor object ok 253 - Create another new object ok 254 - Check 10 ID ok 255 - Check foo sn ok 256 - Caught indirect constructor private exception error ok 257 - Correct error ok 258 - Correct context ok 259 - Not incorrect context ok 260 - Caught indirect constructor protected exception error ok 261 - Correct error ok 262 - Correct context ok 263 - Not incorrect context ok 264 - Create another trust_new object ok 265 - Check 10 ID ok 266 - Check foo name ok 267 - Caught constructor private exception error ok 268 - Correct error ok 269 - Correct context ok 270 - Not incorrect context ok 271 - Caught constructor protected exception error ok 272 - Correct error ok 273 - Correct context ok 274 - Not incorrect context ok 275 - Get "trust_new" constructor object ok 276 - Create another trust_new object ok 277 - Check 10 ID ok 278 - Check foo name ok 279 - Caught indirect constructor private exception error ok 280 - Correct error ok 281 - Correct context ok 282 - Not incorrect context ok 283 - Caught indirect constructor private exception error ok 284 - Correct error ok 285 - Correct context ok 286 - Not incorrect context ok 287 - Caught prot_new exeption error ok 288 - Correct error ok 289 - Correct context ok 290 - Not incorrect context ok 291 - Get "priv_new" constructor object ok 292 - Caught indirect priv_new exeption error ok 293 - Correct error ok 294 - Correct context ok 295 - Not incorrect context ok 296 - Create new object in main ok 297 - Get class object in main ok 298 - Check default ID ok 299 - Set ID ok 300 - Check 12 ID ok 301 - Get "id" attribute object ok 302 - Check indirect 12 ID ok 303 - Indirectly set ID ok 304 - Check indirect 15 ID ok 305 - Caught protected exception error ok 306 - Correct error ok 307 - Correct context ok 308 - Not incorrect context ok 309 - Caught another protected exception error ok 310 - Correct error ok 311 - Correct context ok 312 - Not incorrect context ok 313 - Get "name" attribute object ok 314 - Caught indirect protected exception error ok 315 - Correct error ok 316 - Correct context ok 317 - Not incorrect context ok 318 - Caught another indirect protected exception error ok 319 - Correct error ok 320 - Correct context ok 321 - Not incorrect context ok 322 - Caught trusted exception error ok 323 - Correct error ok 324 - Correct context ok 325 - Not incorrect context ok 326 - Caught trusted exception again error ok 327 - Correct error ok 328 - Correct context ok 329 - Not incorrect context ok 330 - Get "sn" attribute object ok 331 - Caught indirect trusted exception error ok 332 - Correct error ok 333 - Correct context ok 334 - Not incorrect context ok 335 - Caught another indirect trusted exception error ok 336 - Correct error ok 337 - Correct context ok 338 - Not incorrect context ok 339 - Caught private exception error ok 340 - Correct error ok 341 - Correct context ok 342 - Not incorrect context ok 343 - Caught another private exception error ok 344 - Correct error ok 345 - Correct context ok 346 - Not incorrect context ok 347 - Get "age" attribute object ok 348 - Caught indirect private exception error ok 349 - Correct error ok 350 - Correct context ok 351 - Not incorrect context ok 352 - Caught another indirect private exception error ok 353 - Correct error ok 354 - Correct context ok 355 - Not incorrect context ok 356 - Create new object with id ok 357 - Check 1 ID ok 358 - Get new constructor ok 359 - Indirectly create new object with id ok 360 - Check 52 ID ok 361 - Caught constructor protected exception error ok 362 - Correct error ok 363 - Correct context ok 364 - Not incorrect context ok 365 - Caught indirect constructor protected exception error ok 366 - Correct error ok 367 - Correct context ok 368 - Not incorrect context ok 369 - Caught constructor private exception error ok 370 - Correct error ok 371 - Correct context ok 372 - Not incorrect context ok 373 - Caught indirect constructor private exception error ok 374 - Correct error ok 375 - Correct context ok 376 - Not incorrect context ok 377 - Caught prot_new exeption error ok 378 - Correct error ok 379 - Correct context ok 380 - Not incorrect context ok 381 - Get "prot_new" constructor object ok 382 - Caught indirect prot_new exeption error ok 383 - Correct error ok 384 - Correct context ok 385 - Not incorrect context ok 386 - Caught priv_new exeption error ok 387 - Correct error ok 388 - Correct context ok 389 - Not incorrect context ok 390 - Get "priv_new" constructor object ok 391 - Caught indirect priv_new exeption error ok 392 - Correct error ok 393 - Correct context ok 394 - Not incorrect context ok t\view_affordance................1..209 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::Numeric; ok 3 - use Class::Meta::Types::String; ok 4 - Create Class::Meta object ok 5 - Add new constructor ok 6 - Add id attribute ok 7 - Add protected name attribute ok 8 - Add private age attribute ok 9 - Add trusted sn attribute ok 10 - Create new object ok 11 - Get class object ok 12 - Call to attributes() should return all attributes ok 13 - Check default ID ok 14 - Set ID ok 15 - Check 12 ID ok 16 - Get "id" attribute object ok 17 - Check indirect 12 ID ok 18 - Indirectly set ID ok 19 - Check indirect 15 ID ok 20 - Check empty name ok 21 - Set name ok 22 - Check "Larry" name ok 23 - Get "name" attribute object ok 24 - Check indirect "Larry" name ok 25 - Indirectly set name ok 26 - Check indirect "chip" name ok 27 - Check default age ok 28 - Set age ok 29 - Check 42 age ok 30 - Get "age" attribute object ok 31 - Check indirect 12 age ok 32 - Indirectly set age ok 33 - Check indirect 15 age ok 34 - Check empty sn ok 35 - Set sn ok 36 - Check "123456789" sn ok 37 - Get "sn" attribute object ok 38 - Check indirect "123456789" sn ok 39 - Indirectly set sn ok 40 - Check indirect "987654321" sn ok 41 - Create another new object ok 42 - Check 10 ID ok 43 - Check Damian name ok 44 - Check 35 age ok 45 - Check sn is "au" ok 46 - Get "new" constructor object ok 47 - Create another new object ok 48 - Check 10 ID ok 49 - Check Damian name ok 50 - Check 35 age ok 51 - Check sn is "au" ok 52 - Create new Testarama object ok 53 - Get Testarama class object ok 54 - Call to attributes() should return public and protected attrs ok 55 - Check default ID ok 56 - Set ID ok 57 - Check 12 ID ok 58 - Get "id" attribute object ok 59 - Check indirect 12 ID ok 60 - Indirectly set ID ok 61 - Check indirect 15 ID ok 62 - Check empty name ok 63 - Set name ok 64 - Check Larry name ok 65 - Get "name" attribute object ok 66 - Check indirect "Larry" name ok 67 - Indirectly set name ok 68 - Check indirect "chip" name ok 69 - Catch private exception ok 70 - Correct private exception ok 71 - Catch another private exception ok 72 - Correct private exception again ok 73 - Get "age" attribute object ok 74 - Catch indirect private exception ok 75 - Correct indirectprivate exception ok 76 - Catch another indirect private exception ok 77 - Correct indirect private exception again ok 78 - Catch private exception ok 79 - Correct private exception ok 80 - Catch another private exception ok 81 - Correct private exception again ok 82 - Get "sn" attribute object ok 83 - Catch indirect private exception ok 84 - Correct indirectprivate exception ok 85 - Catch another indirect private exception ok 86 - Correct indirect private exception again ok 87 - Create another new object ok 88 - Check 10 ID ok 89 - Check Damian name ok 90 - Catch constructor private exception ok 91 - Correct private constructor exception ok 92 - Catch constructor trusted exception ok 93 - Correct trusted constructor exception ok 94 - Get "new" constructor object ok 95 - Create another new object ok 96 - Check 10 ID ok 97 - Check Damian name ok 98 - Catch indirect constructor private exception ok 99 - Correct indirect private constructor exception ok 100 - Catch indirect constructor trusted exception ok 101 - Correct indirect trusted constructor exception ok 102 - Create new Test object ok 103 - Get Test class object ok 104 - Call to attributes() should return public and trusted attrs ok 105 - Call to inherited attributes() should also return public and protected attrs ok 106 - Check default ID ok 107 - Set ID ok 108 - Check 12 ID ok 109 - Get "id" attribute object ok 110 - Check indirect 12 ID ok 111 - Indirectly set ID ok 112 - Check indirect 15 ID ok 113 - Catch protected exception ok 114 - Correct protected exception ok 115 - Catch another protected exception ok 116 - Another correct protected exception ok 117 - Get "name" attribute object ok 118 - Catch indirect protected exception ok 119 - Correct indirect protected exception ok 120 - Catch another indirect protected exception ok 121 - Another correct indirect protected exception ok 122 - Catch private exception ok 123 - Correct private exception ok 124 - Catch another private exception ok 125 - Correct private exception again ok 126 - Get "age" attribute object ok 127 - Catch indirect private exception ok 128 - Correct indirectprivate exception ok 129 - Catch another indirect private exception ok 130 - Correct indirect private exception again ok 131 - Check empty sn ok 132 - Set sn ok 133 - Check "123456789" sn ok 134 - Get "sn" attribute object ok 135 - Check indirect "123456789" sn ok 136 - Indirectly set sn ok 137 - Check indirect "987654321" sn ok 138 - Create new Testarama object ok 139 - Check empty sn ok 140 - Set sn ok 141 - Check "123456789" sn ok 142 - Get "sn" attribute object ok 143 - Check indirect "123456789" sn ok 144 - Indirectly set sn ok 145 - Check indirect "987654321" sn ok 146 - Create another new object ok 147 - Check 10 ID ok 148 - Check foo sn ok 149 - Catch constructor private exception ok 150 - Got the right constructor private exception ok 151 - Catch constructor protected exception ok 152 - Got the right constructor protected exception ok 153 - Get "new" constructor object ok 154 - Create another new object ok 155 - Check 10 ID ok 156 - Check foo sn ok 157 - Catch indirect constructor private exception ok 158 - Got the right indirect constructor private exception ok 159 - Catch indirect constructor protected exception ok 160 - Got the right indirect constructor protected exception ok 161 - Create new object in main ok 162 - Get class object in main ok 163 - Check default ID ok 164 - Set ID ok 165 - Check 12 ID ok 166 - Get "id" attribute object ok 167 - Check indirect 12 ID ok 168 - Indirectly set ID ok 169 - Check indirect 15 ID ok 170 - Catch protected exception ok 171 - Correct protected exception ok 172 - Catch another protected exception ok 173 - Correct protected exception again ok 174 - Get "name" attribute object ok 175 - Catch indirect protected exception ok 176 - Correct indirectprotected exception ok 177 - Catch another indirect protected exception ok 178 - Correct indirect protected exception again ok 179 - Catch private exception ok 180 - Correct private exception ok 181 - Catch another private exception ok 182 - Correct private exception again ok 183 - Get "age" attribute object ok 184 - Catch indirect private exception ok 185 - Correct indirectprivate exception ok 186 - Catch another indirect private exception ok 187 - Correct indirect private exception again ok 188 - Catch private exception ok 189 - Correct private exception ok 190 - Catch another private exception ok 191 - Correct private exception again ok 192 - Get "sn" attribute object ok 193 - Catch indirect private exception ok 194 - Correct indirectprivate exception ok 195 - Catch another indirect private exception ok 196 - Correct indirect private exception again ok 197 - Create new object with id ok 198 - Check 1 ID ok 199 - Get new constructor ok 200 - Indirectly create new object with id ok 201 - Check 52 ID ok 202 - Catch constructor protected exception ok 203 - Correct protected constructor exception ok 204 - Catch indirect constructor protected exception ok 205 - Correct indirect protected constructor exception ok 206 - Catch constructor private exception ok 207 - Correct private constructor exception ok 208 - Catch indirect constructor private exception ok 209 - Correct indirect private constructor exception ok t\view_semi_affordance...........1..209 ok 1 - use Class::Meta; ok 2 - use Class::Meta::Types::Numeric; ok 3 - use Class::Meta::Types::String; ok 4 - Create Class::Meta object ok 5 - Add new constructor ok 6 - Add id attribute ok 7 - Add protected name attribute ok 8 - Add private age attribute ok 9 - Add trusted sn attribute ok 10 - Create new object ok 11 - Get class object ok 12 - Call to attributes() should return all attributes ok 13 - Check default ID ok 14 - Set ID ok 15 - Check 12 ID ok 16 - Get "id" attribute object ok 17 - Check indirect 12 ID ok 18 - Indirectly set ID ok 19 - Check indirect 15 ID ok 20 - Check empty name ok 21 - Set name ok 22 - Check "Larry" name ok 23 - Get "name" attribute object ok 24 - Check indirect "Larry" name ok 25 - Indirectly set name ok 26 - Check indirect "chip" name ok 27 - Check default age ok 28 - Set age ok 29 - Check 42 age ok 30 - Get "age" attribute object ok 31 - Check indirect 12 age ok 32 - Indirectly set age ok 33 - Check indirect 15 age ok 34 - Check empty sn ok 35 - Set sn ok 36 - Check "123456789" sn ok 37 - Get "sn" attribute object ok 38 - Check indirect "123456789" sn ok 39 - Indirectly set sn ok 40 - Check indirect "987654321" sn ok 41 - Create another new object ok 42 - Check 10 ID ok 43 - Check Damian name ok 44 - Check 35 age ok 45 - Check sn is "au" ok 46 - Get "new" constructor object ok 47 - Create another new object ok 48 - Check 10 ID ok 49 - Check Damian name ok 50 - Check 35 age ok 51 - Check sn is "au" ok 52 - Create new Testarama object ok 53 - Get Testarama class object ok 54 - Call to attributes() should return public and protected attrs ok 55 - Check default ID ok 56 - Set ID ok 57 - Check 12 ID ok 58 - Get "id" attribute object ok 59 - Check indirect 12 ID ok 60 - Indirectly set ID ok 61 - Check indirect 15 ID ok 62 - Check empty name ok 63 - Set name ok 64 - Check Larry name ok 65 - Get "name" attribute object ok 66 - Check indirect "Larry" name ok 67 - Indirectly set name ok 68 - Check indirect "chip" name ok 69 - Catch private exception ok 70 - Correct private exception ok 71 - Catch another private exception ok 72 - Correct private exception again ok 73 - Get "age" attribute object ok 74 - Catch indirect private exception ok 75 - Correct indirectprivate exception ok 76 - Catch another indirect private exception ok 77 - Correct indirect private exception again ok 78 - Catch private exception ok 79 - Correct private exception ok 80 - Catch another private exception ok 81 - Correct private exception again ok 82 - Get "sn" attribute object ok 83 - Catch indirect private exception ok 84 - Correct indirectprivate exception ok 85 - Catch another indirect private exception ok 86 - Correct indirect private exception again ok 87 - Create another new object ok 88 - Check 10 ID ok 89 - Check Damian name ok 90 - Catch constructor private exception ok 91 - Correct private constructor exception ok 92 - Catch constructor trusted exception ok 93 - Correct trusted constructor exception ok 94 - Get "new" constructor object ok 95 - Create another new object ok 96 - Check 10 ID ok 97 - Check Damian name ok 98 - Catch indirect constructor private exception ok 99 - Correct indirect private constructor exception ok 100 - Catch indirect constructor trusted exception ok 101 - Correct indirect trusted constructor exception ok 102 - Create new Test object ok 103 - Get Test class object ok 104 - Call to attributes() should return public and trusted attrs ok 105 - Call to inherited attributes() should also return public and protected attrs ok 106 - Check default ID ok 107 - Set ID ok 108 - Check 12 ID ok 109 - Get "id" attribute object ok 110 - Check indirect 12 ID ok 111 - Indirectly set ID ok 112 - Check indirect 15 ID ok 113 - Catch protected exception ok 114 - Correct protected exception ok 115 - Catch another protected exception ok 116 - Another correct protected exception ok 117 - Get "name" attribute object ok 118 - Catch indirect protected exception ok 119 - Correct indirect protected exception ok 120 - Catch another indirect protected exception ok 121 - Another correct indirect protected exception ok 122 - Catch private exception ok 123 - Correct private exception ok 124 - Catch another private exception ok 125 - Correct private exception again ok 126 - Get "age" attribute object ok 127 - Catch indirect private exception ok 128 - Correct indirectprivate exception ok 129 - Catch another indirect private exception ok 130 - Correct indirect private exception again ok 131 - Check empty sn ok 132 - Set sn ok 133 - Check "123456789" sn ok 134 - Get "sn" attribute object ok 135 - Check indirect "123456789" sn ok 136 - Indirectly set sn ok 137 - Check indirect "987654321" sn ok 138 - Create new Testarama object ok 139 - Check empty sn ok 140 - Set sn ok 141 - Check "123456789" sn ok 142 - Get "sn" attribute object ok 143 - Check indirect "123456789" sn ok 144 - Indirectly set sn ok 145 - Check indirect "987654321" sn ok 146 - Create another new object ok 147 - Check 10 ID ok 148 - Check foo sn ok 149 - Catch constructor private exception ok 150 - Got the right constructor private exception ok 151 - Catch constructor protected exception ok 152 - Got the right constructor protected exception ok 153 - Get "new" constructor object ok 154 - Create another new object ok 155 - Check 10 ID ok 156 - Check foo sn ok 157 - Catch indirect constructor private exception ok 158 - Got the right indirect constructor private exception ok 159 - Catch indirect constructor protected exception ok 160 - Got the right indirect constructor protected exception ok 161 - Create new object in main ok 162 - Get class object in main ok 163 - Check default ID ok 164 - Set ID ok 165 - Check 12 ID ok 166 - Get "id" attribute object ok 167 - Check indirect 12 ID ok 168 - Indirectly set ID ok 169 - Check indirect 15 ID ok 170 - Catch protected exception ok 171 - Correct protected exception ok 172 - Catch another protected exception ok 173 - Correct protected exception again ok 174 - Get "name" attribute object ok 175 - Catch indirect protected exception ok 176 - Correct indirectprotected exception ok 177 - Catch another indirect protected exception ok 178 - Correct indirect protected exception again ok 179 - Catch private exception ok 180 - Correct private exception ok 181 - Catch another private exception ok 182 - Correct private exception again ok 183 - Get "age" attribute object ok 184 - Catch indirect private exception ok 185 - Correct indirectprivate exception ok 186 - Catch another indirect private exception ok 187 - Correct indirect private exception again ok 188 - Catch private exception ok 189 - Correct private exception ok 190 - Catch another private exception ok 191 - Correct private exception again ok 192 - Get "sn" attribute object ok 193 - Catch indirect private exception ok 194 - Correct indirectprivate exception ok 195 - Catch another indirect private exception ok 196 - Correct indirect private exception again ok 197 - Create new object with id ok 198 - Check 1 ID ok 199 - Get new constructor ok 200 - Indirectly create new object with id ok 201 - Check 52 ID ok 202 - Catch constructor protected exception ok 203 - Correct protected constructor exception ok 204 - Catch indirect constructor protected exception ok 205 - Correct indirect protected constructor exception ok 206 - Catch constructor private exception ok 207 - Correct private constructor exception ok 208 - Catch indirect constructor private exception ok 209 - Correct indirect private constructor exception ok All tests successful, 1 test and 6 subtests skipped. Files=23, Tests=2441, 5 wallclock secs ( 0.00 cusr + 0.00 csys = 0.00 CPU) Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. C:\cpanrun\build\5-10-0\bin\perl.exe Build --makefile_env_macros 1 install Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\AccessorBuilder.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Attribute.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Class.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Constructor.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Method.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Type.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\AccessorBuilder\Affordance.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\AccessorBuilder\SemiAffordance.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Types\Boolean.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Types\Numeric.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Types\Perl.pm Installing C:\cpanrun\build\5-10-0\site\lib\Class\Meta\Types\String.pm Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.AccessorBuilder.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.AccessorBuilder.Affordance.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.AccessorBuilder.SemiAffordance.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Attribute.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Class.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Constructor.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Method.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Type.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Types.Boolean.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Types.Numeric.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Types.Perl.3 Installing C:\cpanrun\build\5-10-0\man\man3\Class.Meta.Types.String.3 Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\AccessorBuilder.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Attribute.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Class.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Constructor.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Method.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Type.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\AccessorBuilder\Affordance.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\AccessorBuilder\SemiAffordance.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Types\Boolean.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Types\Numeric.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Types\Perl.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Class\Meta\Types\String.html Writing C:\cpanrun\build\5-10-0\site\lib\auto\Class\Meta\.packlist