1#!/usr/bin/perl 2use strict; 3use warnings; 4use Test::More tests => 7; 5BEGIN { use_ok('exception_order') } 6require_ok('exception_order'); 7 8# adapted from ../python/exception_order_runme.py 9 10my $a = exception_order::A->new(); 11 12eval { $a->foo() }; 13isa_ok($@, "exception_order::E1"); 14 15eval { $a->bar() }; 16isa_ok($@, "exception_order::E2"); 17 18eval { $a->foobar() }; 19like($@, qr/\bpostcatch unknown\b/); 20 21eval { $a->barfoo(1) }; 22isa_ok($@, "exception_order::E1"); 23 24eval { $a->barfoo(2) }; 25isa_ok($@, "exception_order::E2"); 26