4 use Test::More tests => 23;
13 isa => 'Test::Builder',
17 can_ok(Class => 'tb');
20 Class->new(tb => Test::Builder->new);
24 my $class = Class->new;
25 $class->tb(Test::Builder->new);
26 isa_ok($class->tb, 'Test::Builder');
31 } qr/Attribute \(tb\) does not pass the type constraint because: Validation failed for 'Test::Builder' failed with value 3/;
34 my $class = Class->new;
36 } qr/Attribute \(tb\) does not pass the type constraint because: Validation failed for 'Test::Builder' failed with value 3/;
39 Class->new(tb => Class->new);
40 } qr/Attribute \(tb\) does not pass the type constraint because: Validation failed for 'Test::Builder' failed with value Class=HASH\(\w+\)/;
54 } qr/Attribute \(oops\) does not pass the type constraint because: Validation failed for 'Int' failed with value yikes/;
57 Other->new(oops => 10);
60 # ClassName coverage tests
67 our @ISA = 'Mouse::Object';
82 package ClassNameTests;
91 for ('A'..'C', 'D::Child') {
93 ClassNameTests->new(class => $_);
97 my $obj = ClassNameTests->new;
102 for ('E'..'F', 'NonExistentClass') {
104 ClassNameTests->new(class => $_);
105 } qr/Attribute \(class\) does not pass the type constraint because: Validation failed for 'ClassName' failed with value $_/;
108 my $obj = ClassNameTests->new;
110 } qr/Attribute \(class\) does not pass the type constraint because: Validation failed for 'ClassName' failed with value $_/;