Update to CPANPLUS 0.87_01
[p5sagit/p5-mst-13.2.git] / lib / perl5db.t
index 9c95a5b..e14cfd3 100644 (file)
@@ -1,4 +1,4 @@
-#!/usr/bin/perl
+#!./perl
 
 BEGIN {
     chdir 't' if -d 't';
@@ -14,9 +14,19 @@ BEGIN {
        print "1..0 # Skip: no /dev/null\n";
        exit 0;
     }
+my $dev_tty = '/dev/tty';
+   $dev_tty = 'TT:' if ($^O eq 'VMS');
+    if (!-c $dev_tty) {
+       print "1..0 # Skip: no $dev_tty\n";
+       exit 0;
+    }
+    if ($ENV{PERL5DB}) {
+       print "1..0 # Skip: \$ENV{PERL5DB} is already set to '$ENV{PERL5DB}'\n";
+       exit 0;
+    }
 }
 
-plan(1);
+plan(3);
 
 sub rc {
     open RC, ">", ".perldb" or die $!;
@@ -49,7 +59,10 @@ rc(
     }\n|,
 );
 
-runperl(switches => [ '-d' ], progfile => $target);
+{
+    local $ENV{PERLDB_OPTS} = "ReadLine=0";
+    runperl(switches => [ '-d' ], progfile => $target);
+}
 
 my $contents;
 {
@@ -63,8 +76,20 @@ like($contents, qr/sub factorial/,
     'The ${main::_<filename} variable in the debugger was not destroyed'
 );
 
+{
+    local $ENV{PERLDB_OPTS} = "ReadLine=0";
+    my $output = runperl(switches => [ '-d' ], progfile => '../lib/perl5db/t/lvalue-bug');
+    like($output, qr/foo is defined/, 'lvalue subs work in the debugger');
+}
+
+{
+    local $ENV{PERLDB_OPTS} = "ReadLine=0 NonStop=1";
+    my $output = runperl(switches => [ '-d' ], progfile => '../lib/perl5db/t/symbol-table-bug');
+    like($output, qr/Undefined symbols 0/, 'there are no undefined values in the symbol table');
+}
+
 # clean up.
 
 END {
-    unlink qw(.perldb db.out);
+    1 while unlink qw(.perldb db.out);
 }