|
Packit Service |
3b7cb7 |
use strict;
|
|
Packit Service |
3b7cb7 |
use warnings;
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
use Test::More;
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
use Exception::Class (
|
|
Packit Service |
3b7cb7 |
'Foo',
|
|
Packit Service |
3b7cb7 |
'Bar' => { isa => 'Foo' },
|
|
Packit Service |
3b7cb7 |
);
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
## no critic (ErrorHandling::RequireCheckingReturnValueOfEval)
|
|
Packit Service |
3b7cb7 |
{
|
|
Packit Service |
3b7cb7 |
eval { Foo->throw( error => 'foo' ) };
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
my $e = Exception::Class->caught('Bar');
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
ok( !$e, 'caught returns false for wrong class' );
|
|
Packit Service |
3b7cb7 |
}
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
{
|
|
Packit Service |
3b7cb7 |
eval { Foo->throw( error => 'foo' ) };
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
my $e = Bar->caught();
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
ok( !$e, 'caught returns false for wrong class' );
|
|
Packit Service |
3b7cb7 |
}
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
{
|
|
Packit Service |
3b7cb7 |
eval { Foo->throw( error => 'foo' ) };
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
my $e = Exception::Class->caught('Foo');
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
ok( $e, 'caught returns exception for correct class' );
|
|
Packit Service |
3b7cb7 |
isa_ok( $e, 'Foo' );
|
|
Packit Service |
3b7cb7 |
is( $e->message, 'foo', 'message is "foo"' );
|
|
Packit Service |
3b7cb7 |
}
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
{
|
|
Packit Service |
3b7cb7 |
eval { Foo->throw( error => 'foo' ) };
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
my $e = Foo->caught();
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
ok( $e, 'Foo->caught() returns exception' );
|
|
Packit Service |
3b7cb7 |
isa_ok( $e, 'Foo' );
|
|
Packit Service |
3b7cb7 |
}
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
{
|
|
Packit Service |
3b7cb7 |
eval { Foo->throw( error => 'foo' ) };
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
my $e = Exception::Class->caught();
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
ok( $e, 'Foo->caught() returns exception' );
|
|
Packit Service |
3b7cb7 |
isa_ok( $e, 'Foo' );
|
|
Packit Service |
3b7cb7 |
}
|
|
Packit Service |
3b7cb7 |
|
|
Packit Service |
3b7cb7 |
done_testing();
|