Make the code even more dynamical so that testname
Jarkko Hietaniemi [Sat, 16 Jun 2001 18:34:30 +0000 (18:34 +0000)]
suffix length can change.

p4raw-id: //depot/perl@10638

lib/Test/Harness.pm
t/TEST

index 8966ca6..18ee902 100644 (file)
@@ -396,13 +396,16 @@ sub _run_all_tests {
     my $t_start = new Benchmark;
 
     my $maxlen = 0;
-    foreach (@tests) {
-       my $len = length;
-       $maxlen = $len if $len > $maxlen;
+    my $maxsuflen = 0;
+    foreach (@tests) { # The same code in t/TEST
+       my $suf    = /\.(\w+)$/ ? $1 : '';
+       my $len    = length;
+       my $suflen = length $suf;
+       $maxlen    = $len    if $len    > $maxlen;
+       $maxsuflen = $suflen if $suflen > $maxsuflen;
     }
-    # +3 : we want three dots between the test name and the "ok"
-    # -2 : the .t suffix
-    my $width = $maxlen + 3 - 2;
+    # + 3 : we want three dots between the test name and the "ok"
+    my $width = $maxlen + 3 - $maxsuflen;
     foreach my $tfile (@tests) {
         my($leader, $ml) = _mk_leader($tfile, $width);
         print $leader;
diff --git a/t/TEST b/t/TEST
index 5cd1927..148e9bd 100755 (executable)
--- a/t/TEST
+++ b/t/TEST
@@ -115,14 +115,17 @@ EOT
     $total = @tests;
     $files  = 0;
     $totmax = 0;
-    $maxlen = 0;
-    foreach (@tests) {
-       $len = length;
-       $maxlen = $len if $len > $maxlen;
+    my $maxlen = 0;
+    my $maxsuflen = 0;
+    foreach (@tests) { # The same code in lib/Test/Harness.pm:_run_all_tests
+       my $suf    = /\.(\w+)$/ ? $1 : '';
+       my $len    = length;
+       my $suflen = length $suf;
+       $maxlen    = $len    if $len    > $maxlen;
+       $maxsuflen = $suflen if $suflen > $maxsuflen;
     }
-    # +3 : we want three dots between the test name and the "ok"
-    # -2 : the .t suffix
-    $dotdotdot = $maxlen + 3 - 2;
+    # + 3 : we want three dots between the test name and the "ok"
+    $dotdotdot = $maxlen + 3 - $maxsuflen;
     while ($test = shift @tests) {
 
        if ( $infinite{$test} && $type eq 'compile' ) {