1#!./perl 2 3BEGIN { 4 require Config; 5 if (($Config::Config{'extensions'} !~ /\bre\b/) ){ 6 print "1..0 # Skip -- Perl configured without re module\n"; 7 exit 0; 8 } 9} 10 11use strict; 12 13# must use a BEGIN or the prototypes wont be respected meaning 14 # tests could pass that shouldn't 15BEGIN { require "../../t/test.pl"; } 16my $out = runperl(progfile => "t/lexical_debug.pl", stderr => 1 ); 17 18print "1..12\n"; 19 20# Each pattern will produce an EXACT node with a specific string in 21# it, so we will look for that. We can't just look for the string 22# alone as the string being matched against contains all of them. 23 24ok( $out =~ /EXACT <foo>/, "Expect 'foo'" ); 25ok( $out !~ /EXACT <bar>/, "No 'bar'" ); 26ok( $out =~ /EXACT <baz>/, "Expect 'baz'" ); 27ok( $out !~ /EXACT <bop>/, "No 'bop'" ); 28ok( $out =~ /EXACT <boq>/, "Expect 'boq'" ); 29ok( $out !~ /EXACT <bor>/, "No 'bor'" ); 30ok( $out =~ /EXACT <fip>/, "Expect 'fip'" ); 31ok( $out !~ /EXACT <fop>/, "No 'baz'" ); 32ok( $out =~ /<liz>/, "Got 'liz'" ); # in a TRIE so no EXACT 33ok( $out =~ /<zoo>/, "Got 'zoo'" ); # in a TRIE so no EXACT 34ok( $out =~ /<zap>/, "Got 'zap'" ); # in a TRIE so no EXACT 35ok( $out =~ /Count=9\n/, "Count is 9") 36 or diag($out); 37 38