-#!/usr/bin/perl
-
use strict;
use warnings;
-use Test::More tests => 12;
+use Test::More;
-BEGIN {
- use_ok('metaclass');
-}
+use metaclass;
{
package FooMeta;
use base 'Class::MOP::Class';
-
+
package Foo;
use metaclass 'FooMeta';
}
{
package BarMeta;
use base 'Class::MOP::Class';
-
+
package BarMeta::Attribute;
use base 'Class::MOP::Attribute';
-
+
package BarMeta::Method;
- use base 'Class::MOP::Method';
-
+ use base 'Class::MOP::Method';
+
package Bar;
use metaclass 'BarMeta' => (
'attribute_metaclass' => 'BarMeta::Attribute',
- 'method_metaclass' => 'BarMeta::Method',
+ 'method_metaclass' => 'BarMeta::Method',
);
}
can_ok('Baz', 'meta');
isa_ok(Baz->meta, 'Class::MOP::Class');
-eval {
+eval {
package Boom;
metaclass->import('Foo');
};
ok($@, '... metaclasses must be subclass of Class::MOP::Class');
+done_testing;