diff options
author | Jerry D. Hedden <jdhedden@cpan.org> | 2008-01-08 10:01:02 -0500 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2008-01-09 10:54:27 +0000 |
commit | 192c1e277b50bfcbfdd3717ce2ae7c1a42fa9601 (patch) | |
tree | 3f970a6b8a3990c88ffdf00716b975ddc426dcee /t/op | |
parent | 2e8342de65fb9cb7fd716c30bbddc9c0f4311ba0 (diff) | |
download | perl-192c1e277b50bfcbfdd3717ce2ae7c1a42fa9601.tar.gz |
Move re::regexp_pattern to universal.c
From: "Jerry D. Hedden" <jdhedden@cpan.org>
Message-ID: <1ff86f510801081201q5c36f055re6165ebfe8876c2e@mail.gmail.com>
p4raw-id: //depot/perl@32911
Diffstat (limited to 't/op')
-rw-r--r-- | t/op/re.t | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/t/op/re.t b/t/op/re.t new file mode 100644 index 0000000000..d098bdc7da --- /dev/null +++ b/t/op/re.t @@ -0,0 +1,46 @@ +#!./perl + +BEGIN { + chdir 't' if -d 't'; + @INC = '../lib'; +} + +use strict; +use warnings; + +use Test::More; # test count at bottom of file +use re qw(is_regexp regexp_pattern + regname regnames regnames_count); +{ + my $qr=qr/foo/pi; + ok(is_regexp($qr),'is_regexp($qr)'); + ok(!is_regexp(''),'is_regexp("")'); + is((regexp_pattern($qr))[0],'foo','regexp_pattern[0]'); + is((regexp_pattern($qr))[1],'ip','regexp_pattern[1]'); + is(regexp_pattern($qr),'(?pi-xsm:foo)','scalar regexp_pattern'); + ok(!regexp_pattern(''),'!regexp_pattern("")'); +} + +if ('1234'=~/(?:(?<A>\d)|(?<C>!))(?<B>\d)(?<A>\d)(?<B>\d)/){ + my @names = sort +regnames(); + is("@names","A B","regnames"); + @names = sort +regnames(0); + is("@names","A B","regnames"); + my $names = regnames(); + is($names, "B", "regnames in scalar context"); + @names = sort +regnames(1); + is("@names","A B C","regnames"); + is(join("", @{regname("A",1)}),"13"); + is(join("", @{regname("B",1)}),"24"); + { + if ('foobar'=~/(?<foo>foo)(?<bar>bar)/) { + is(regnames_count(),2); + } else { + ok(0); ok(0); + } + } + is(regnames_count(),3); +} +# New tests above this line, don't forget to update the test count below! +use Test::More tests => 14; +# No tests here! |