Exception.pm revision 324c4644fee44b9898524c09511bd33c3f12e2df
1324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverpackage Test::ANTLR::Runtime::Exception;
2324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
3324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruveruse Test::More;
4324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
5324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruveruse Moose;
6324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
7324c4644fee44b9898524c09511bd33c3f12e2dfBen GruverBEGIN { extends 'My::Test::Class' }
8324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
9324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruversub constructor : Test(1) {
10324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my ($self) = @_;
11324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my $ex = $self->class->new();
12324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    is $ex->message, '';
13324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
14324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
15324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruversub constructor_message : Test(1) {
16324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my ($self) = @_;
17324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my $ex = $self->class->new({ message => 'test error message' });
18324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    is $ex->message, 'test error message';
19324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
20324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
21324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruversub throw : Test(1) {
22324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my ($self) = @_;
23324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    eval {
24324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver        $self->class->throw(message => 'test error message');
25324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    };
26324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my $ex = $self->class->caught();
27324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    is $ex->message, 'test error message';
28324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
29324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
30324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverno Moose;
31324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver__PACKAGE__->meta->make_immutable(inline_constructor => 0);
32324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver1;
33