use strict;
use warnings;
-use Test::More tests => 7;
-use Test::Exception;
+use Test::More;
+use Test::Fatal;
use Scalar::Util 'blessed';
-
-
{
package Dog;
use Moose::Role;
}
my $bar = Bar->new;
-isa_ok($bar, 'Bar');
+isa_ok($bar, 'Bar');
my $foo = Foo->new;
-isa_ok($foo, 'Foo');
+isa_ok($foo, 'Foo');
ok(!$bar->can( 'talk' ), "... the role is not composed yet");
-dies_ok {
+ok exception {
$foo->dog($bar)
-} '... and setting the accessor fails (not a Dog yet)';
+}, '... and setting the accessor fails (not a Dog yet)';
Dog->meta->apply($bar);
is($bar->talk, 'woof', '... got the right return value for the newly composed method');
-lives_ok {
+ok ! exception {
$foo->dog($bar)
-} '... and setting the accessor is okay';
+}, '... and setting the accessor is okay';
+done_testing;