Teach B::Deparse about in-place reverse
[p5sagit/p5-mst-13.2.git] / ext / B / t / concise.t
index 175d540..3eb22ce 100644 (file)
@@ -1,23 +1,16 @@
 #!./perl
 
 BEGIN {
-    if ($ENV{PERL_CORE}){
-       chdir('t') if -d 't';
-       @INC = ('.', '../lib');
-    } else {
-       unshift @INC, 't';
-       push @INC, "../../t";
-    }
+    unshift @INC, 't';
     require Config;
     if (($Config::Config{'extensions'} !~ /\bB\b/) ){
         print "1..0 # Skip -- Perl configured without B module\n";
         exit 0;
     }
     require 'test.pl';         # we use runperl from 'test.pl', so can't use Test::More
-    sub diag { print "# @_\n" } # but this is still handy
 }
 
-plan tests => 156;
+plan tests => 157;
 
 require_ok("B::Concise");
 
@@ -201,7 +194,8 @@ SKIP: {
 
        sub defd_empty {};
        ($res,$err) = render('-basic', \&defd_empty);
-       is(scalar split(/\n/, $res), 3,
+       my @lines = split(/\n/, $res);
+       is(scalar @lines, 3,
           "'sub defd_empty {}' seen as 3 liner");
 
        is(1, $res =~ /leavesub/ && $res =~ /(next|db)state/,
@@ -407,18 +401,20 @@ like($out, qr/PAD_FAKELEX_MULTI is a constant sub, optimized to a IV/,
 like($out, qr/\# 4\d\d: \s+ \$l->concise\(\$level\);/,
      "src-line rendering works");
 
+$out = runperl ( switches => ["-MO=Concise,-stash=ExtUtils::Mksymlists,-src,-exec"],
+                prog => '-e 1', stderr => 1 );
+
+like($out, qr/FUNC: \*ExtUtils::Mksymlists::_write_vms/,
+     "stash rendering loads package as needed");
+
 $out = runperl ( switches => ["-MO=Concise,-stash=Data::Dumper,-src,-exec"],
                 prog => '-e 1', stderr => 1 );
 
 like($out, qr/FUNC: \*Data::Dumper::format_refaddr/,
      "stash rendering loads package as needed");
 
-my $prog = q{
-    package FOO;
-    sub bar { print "bar" }
-    package main;
-    FOO::bar();
-};
+my $prog = q{package FOO; sub bar { print "bar" } package main; FOO::bar(); };
+
 # this would fail if %INC used for -stash test
 $out = runperl ( switches => ["-MO=Concise,-src,-stash=FOO,-main"],
                 prog => $prog, stderr => 1 );