]> git.vpit.fr Git - perl/modules/re-engine-Plugin.git/blob - t/30-callbacks/free.t
Enable free callbcks
[perl/modules/re-engine-Plugin.git] / t / 30-callbacks / free.t
1 =pod
2
3 Test the C<free> callback
4
5 =cut
6
7 use strict;
8 use Test::More tests => 2;
9
10 my $pat = 'pattern';
11
12 {
13     use re::engine::Plugin (
14         free => sub {
15             pass 'default free callback';
16         },
17     );
18
19     # Regexp destruction happens too late for Test::More, so do it in an eval.
20     eval q[
21         "str" =~ /$pat/;
22     ];
23     die $@ if $@;
24 }
25
26 {
27     use re::engine::Plugin (
28         comp => sub {
29             my ($re) = @_;
30
31             $re->callbacks(
32                 free => sub { pass 'free callback set in the comp callback' },
33             );
34         }
35     );
36
37     # Ditto.
38     eval q[
39         "str" =~ /$pat/;
40     ];
41     die $@ if $@;
42 }