4 use Test::More tests => 48;
11 Class::MOP::Class->initialize();
12 } '... initialize requires a name parameter';
15 Class::MOP::Class->initialize('');
16 } '... initialize requires a name valid parameter';
19 Class::MOP::Class->initialize(bless {} => 'Foo');
20 } '... initialize requires an unblessed parameter'
25 Class::MOP::Class->construct_class_instance();
26 } '... construct_class_instance requires an :package parameter';
29 Class::MOP::Class->construct_class_instance(':package' => undef);
30 } '... construct_class_instance requires a defined :package parameter';
33 Class::MOP::Class->construct_class_instance(':package' => '');
34 } '... construct_class_instance requires a valid :package parameter';
40 Class::MOP::Class->create();
41 } '... create requires an package_name parameter';
44 Class::MOP::Class->create(undef);
45 } '... create requires a defined package_name parameter';
48 Class::MOP::Class->create('');
49 } '... create requires a valid package_name parameter';
52 Class::MOP::Class->create('+++');
53 } qr/^creation of \+\+\+ failed/, '... create requires a valid package_name parameter';
59 Class::MOP::Class->clone_object(1);
60 } '... can only clone instances';
63 Class::MOP::Class->clone_instance(1);
64 } '... can only clone instances';
69 Class::MOP::Class->add_method();
70 } '... add_method dies as expected';
73 Class::MOP::Class->add_method('');
74 } '... add_method dies as expected';
77 Class::MOP::Class->add_method('foo' => 'foo');
78 } '... add_method dies as expected';
81 Class::MOP::Class->add_method('foo' => []);
82 } '... add_method dies as expected';
87 Class::MOP::Class->alias_method();
88 } '... alias_method dies as expected';
91 Class::MOP::Class->alias_method('');
92 } '... alias_method dies as expected';
95 Class::MOP::Class->alias_method('foo' => 'foo');
96 } '... alias_method dies as expected';
99 Class::MOP::Class->alias_method('foo' => []);
100 } '... alias_method dies as expected';
105 Class::MOP::Class->has_method();
106 } '... has_method dies as expected';
109 Class::MOP::Class->has_method('');
110 } '... has_method dies as expected';
115 Class::MOP::Class->get_method();
116 } '... get_method dies as expected';
119 Class::MOP::Class->get_method('');
120 } '... get_method dies as expected';
125 Class::MOP::Class->remove_method();
126 } '... remove_method dies as expected';
129 Class::MOP::Class->remove_method('');
130 } '... remove_method dies as expected';
135 Class::MOP::Class->find_all_methods_by_name();
136 } '... find_all_methods_by_name dies as expected';
139 Class::MOP::Class->find_all_methods_by_name('');
140 } '... find_all_methods_by_name dies as expected';
145 Class::MOP::Class->add_attribute(bless {} => 'Foo');
146 } '... add_attribute dies as expected';
152 Class::MOP::Class->has_attribute();
153 } '... has_attribute dies as expected';
156 Class::MOP::Class->has_attribute('');
157 } '... has_attribute dies as expected';
162 Class::MOP::Class->get_attribute();
163 } '... get_attribute dies as expected';
166 Class::MOP::Class->get_attribute('');
167 } '... get_attribute dies as expected';
172 Class::MOP::Class->remove_attribute();
173 } '... remove_attribute dies as expected';
176 Class::MOP::Class->remove_attribute('');
177 } '... remove_attribute dies as expected';
182 Class::MOP::Class->add_package_symbol();
183 } '... add_package_symbol dies as expected';
186 Class::MOP::Class->add_package_symbol('');
187 } '... add_package_symbol dies as expected';
190 Class::MOP::Class->add_package_symbol('foo');
191 } '... add_package_symbol dies as expected';
194 Class::MOP::Class->add_package_symbol('&foo');
195 } '... add_package_symbol dies as expected';
198 # Class::MOP::Class->meta->add_package_symbol('@-');
199 # } qr/^Could not create package variable \(\@\-\) because/,
200 # '... add_package_symbol dies as expected';
205 Class::MOP::Class->has_package_symbol();
206 } '... has_package_symbol dies as expected';
209 Class::MOP::Class->has_package_symbol('');
210 } '... has_package_symbol dies as expected';
213 Class::MOP::Class->has_package_symbol('foo');
214 } '... has_package_symbol dies as expected';
219 Class::MOP::Class->get_package_symbol();
220 } '... get_package_symbol dies as expected';
223 Class::MOP::Class->get_package_symbol('');
224 } '... get_package_symbol dies as expected';
227 Class::MOP::Class->get_package_symbol('foo');
228 } '... get_package_symbol dies as expected';
233 Class::MOP::Class->remove_package_symbol();
234 } '... remove_package_symbol dies as expected';
237 Class::MOP::Class->remove_package_symbol('');
238 } '... remove_package_symbol dies as expected';
241 Class::MOP::Class->remove_package_symbol('foo');
242 } '... remove_package_symbol dies as expected';