4 use Test::More tests => 6;
11 package Foo::Meta::Instance;
12 use base 'Class::MOP::Instance';
14 package Bar::Meta::Instance;
15 use base 'Class::MOP::Instance';
17 package FooBar::Meta::Instance;
18 use base 'Foo::Meta::Instance', 'Bar::Meta::Instance';
24 metaclass->import('instance_metaclass' => 'Foo::Meta::Instance');
26 ok(!$@, '... Foo.meta => Foo::Meta is compatible') || diag $@;
31 metaclass->import('instance_metaclass' => 'Bar::Meta::Instance');
33 ok(!$@, '... Bar.meta => Bar::Meta is compatible') || diag $@;
39 metaclass->import('instance_metaclass' => 'Bar::Meta::Instance');
41 ok($@, '... Foo::Foo.meta => Bar::Meta is not compatible') || diag $@;
47 metaclass->import('instance_metaclass' => 'Foo::Meta::Instance');
49 ok($@, '... Bar::Bar.meta => Foo::Meta is not compatible') || diag $@;
55 metaclass->import('instance_metaclass' => 'FooBar::Meta::Instance');
57 ok(!$@, '... FooBar.meta => FooBar::Meta is compatible') || diag $@;
63 metaclass->import('instance_metaclass' => 'FooBar::Meta::Instance');
65 ok(!$@, '... FooBar2.meta => FooBar::Meta is compatible') || diag $@;