1#!/usr/bin/perl -w 2 3BEGIN { 4 if( $ENV{PERL_CORE} ) { 5 chdir 't'; 6 @INC = ('../lib', 'lib'); 7 } 8 else { 9 unshift @INC, 't/lib'; 10 } 11} 12 13use strict; 14use Test::More tests => 10; 15 16use Test::Builder; 17my $Test = Test::Builder->new; 18 19SKIP: { 20 skip "qr// added in 5.005", 3 if $] < 5.005; 21 22 # 5.004 can't even see qr// or it pukes in compile. 23 eval q{ 24 my $r = $Test->maybe_regex(qr/^FOO$/i); 25 ok(defined $r, 'qr// detected'); 26 ok(('foo' =~ /$r/), 'qr// good match'); 27 ok(('bar' !~ /$r/), 'qr// bad match'); 28 }; 29 die $@ if $@; 30} 31 32{ 33 my $r = $Test->maybe_regex('/^BAR$/i'); 34 ok(defined $r, '"//" detected'); 35 ok(('bar' =~ m/$r/), '"//" good match'); 36 ok(('foo' !~ m/$r/), '"//" bad match'); 37}; 38 39{ 40 my $r = $Test->maybe_regex('not a regex'); 41 ok(!defined $r, 'non-regex detected'); 42}; 43 44 45{ 46 my $r = $Test->maybe_regex('/0/'); 47 ok(defined $r, 'non-regex detected'); 48 ok(('f00' =~ m/$r/), '"//" good match'); 49 ok(('b4r' !~ m/$r/), '"//" bad match'); 50}; 51