use strict;
use warnings;
use Test::More;
-use Test::Fatal;
+use Test::Exception;
use Class::MOP;
}
undef $instance;
-ok ! exception {
+lives_and {
my $foo = Foo::Sub->new;
isa_ok($foo, 'Foo');
isa_ok($foo, 'Foo::Sub');
};
undef $instance;
-ok ! exception {
+lives_and {
my $foo = Foo::Sub->new(foo => 'FOO');
isa_ok($foo, 'Foo');
isa_ok($foo, 'Foo::Sub');
};
undef $instance;
-ok ! exception {
+lives_and {
my $foo = Foo::Sub->new(bar => 'bar');
isa_ok($foo, 'Foo');
isa_ok($foo, 'Foo::Sub');
};
undef $instance;
-ok ! exception {
+lives_and {
my $foo = Foo::Sub->new(foo => 'FOO', bar => 'bar');
isa_ok($foo, 'Foo');
isa_ok($foo, 'Foo::Sub');
);
}
-like exception { BadFoo::Sub->new },
+throws_ok { BadFoo::Sub->new }
qr/BadFoo=HASH.*is not a BadFoo::Sub/,
"error with incorrect constructors";
{
my $meta = Class::MOP::Class->create('Really::Bad::Foo');
- like exception {
+ throws_ok {
$meta->new_object(__INSTANCE__ => (bless {}, 'Some::Other::Class'))
- }, qr/Some::Other::Class=HASH.*is not a Really::Bad::Foo/,
- "error with completely invalid class";
+ } qr/Some::Other::Class=HASH.*is not a Really::Bad::Foo/,
+ "error with completely invalid class";
}
{
my $meta = Class::MOP::Class->create('Really::Bad::Foo::2');
for my $invalid ('foo', 1, 0, '') {
- like exception {
+ throws_ok {
$meta->new_object(__INSTANCE__ => $invalid)
- }, qr/The __INSTANCE__ parameter must be a blessed reference, not $invalid/,
- "error with unblessed thing";
+ } qr/The __INSTANCE__ parameter must be a blessed reference, not $invalid/,
+ "error with unblessed thing";
}
}