From: Bram Date: Fri, 24 Jul 2009 22:32:25 +0000 (+0200) Subject: Add test case for [perl #61222] + a test case for proxy constant subroutines X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=7eedc5ec657fbec215a6bd7fef317d31b8aaa82f;p=p5sagit%2Fp5-mst-13.2.git Add test case for [perl #61222] + a test case for proxy constant subroutines --- diff --git a/lib/perl5db.t b/lib/perl5db.t index bb098a1..6e57c9f 100644 --- a/lib/perl5db.t +++ b/lib/perl5db.t @@ -27,7 +27,7 @@ my $dev_tty = '/dev/tty'; } } -plan(5); +plan(7); sub rc { open RC, ">", ".perldb" or die $!; @@ -109,6 +109,57 @@ SKIP: { } } + +# Test [perl #61222] +{ + rc( + qq| + &parse_options("NonStop=0 TTY=db.out LineInfo=db.out"); + \n|, + + qq| + sub afterinit { + push(\@DB::typeahead, + 'm Pie', + 'q', + ); + }\n|, + ); + + my $output = runperl(switches => [ '-d' ], stderr => 1, progfile => '../lib/perl5db/t/rt-61222'); + my $contents; + { + local $/; + open I, "<", 'db.out' or die $!; + $contents = ; + close(I); + } + unlike($contents, qr/INCORRECT/, "[perl #61222]"); +} + + + +# Test for Proxy constants +{ + rc( + qq| + &parse_options("NonStop=0 TTY=db.out LineInfo=db.out"); + \n|, + + qq| + sub afterinit { + push(\@DB::typeahead, + 'm main->s1', + 'q', + ); + }\n|, + ); + + my $output = runperl(switches => [ '-d' ], stderr => 1, progfile => '../lib/perl5db/t/proxy-constants'); + is($output, "", "proxy constant subroutines"); +} + + # clean up. END { diff --git a/lib/perl5db/t/proxy-constants b/lib/perl5db/t/proxy-constants new file mode 100644 index 0000000..ea60855 --- /dev/null +++ b/lib/perl5db/t/proxy-constants @@ -0,0 +1,9 @@ +#!/usr/bin/perl +# +# This code is used by lib/perl5db.t !!! +# + +use constant FOO => "bar"; +sub s1 { + "main"; +} diff --git a/lib/perl5db/t/rt-61222 b/lib/perl5db/t/rt-61222 new file mode 100644 index 0000000..6dd6a94 --- /dev/null +++ b/lib/perl5db/t/rt-61222 @@ -0,0 +1,10 @@ +#!/usr/bin/perl +# +# This code is used by lib/perl5db.t !!! +# + +package Pie; + +sub INCORRECT (DB); + +1;