6 use Test::More tests => 6;
13 package Foo::Meta::Instance;
14 use base 'Class::MOP::Instance';
16 package Bar::Meta::Instance;
17 use base 'Class::MOP::Instance';
19 package FooBar::Meta::Instance;
20 use base 'Foo::Meta::Instance', 'Bar::Meta::Instance';
26 metaclass->import('instance_metaclass' => 'Foo::Meta::Instance');
28 ok(!$@, '... Foo.meta => Foo::Meta is compatible') || diag $@;
33 metaclass->import('instance_metaclass' => 'Bar::Meta::Instance');
35 ok(!$@, '... Bar.meta => Bar::Meta is compatible') || diag $@;
41 metaclass->import('instance_metaclass' => 'Bar::Meta::Instance');
43 ok($@, '... Foo::Foo.meta => Bar::Meta is not compatible') || diag $@;
49 metaclass->import('instance_metaclass' => 'Foo::Meta::Instance');
51 ok($@, '... Bar::Bar.meta => Foo::Meta is not compatible') || diag $@;
57 metaclass->import('instance_metaclass' => 'FooBar::Meta::Instance');
59 ok(!$@, '... FooBar.meta => FooBar::Meta is compatible') || diag $@;
65 metaclass->import('instance_metaclass' => 'FooBar::Meta::Instance');
67 ok(!$@, '... FooBar2.meta => FooBar::Meta is compatible') || diag $@;