[BACK]Return to regress.pl CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc / regress

Diff for /mandoc/regress/regress.pl between version 1.3 and 1.7

version 1.3, 2017/02/09 15:34:28 version 1.7, 2017/07/04 15:24:36
Line 113  for (@ARGV) {
Line 113  for (@ARGV) {
                 $displaylevel = int;                  $displaylevel = int;
                 next;                  next;
         }          }
         /^(all|ascii|utf8|man|html|lint|clean|verbose)$/          /^(all|ascii|utf8|man|html|markdown|lint|clean|verbose)$/
             or usage "$_: invalid modifier";              or usage "$_: invalid modifier";
         $targets{$_} = 1;          $targets{$_} = 1;
 }  }
 $targets{all} = 1  $targets{all} = 1
     unless $targets{ascii} || $targets{utf8} || $targets{man} ||      unless $targets{ascii} || $targets{utf8} || $targets{man} ||
       $targets{html} || $targets{lint} || $targets{clean};        $targets{html} || $targets{markdown} ||
         $targets{lint} || $targets{clean};
 $targets{ascii} = $targets{utf8} = $targets{man} = $targets{html} =  $targets{ascii} = $targets{utf8} = $targets{man} = $targets{html} =
     $targets{lint} = 1 if $targets{all};      $targets{markdown} = $targets{lint} = 1 if $targets{all};
 $displaylevel = 3 if $targets{verbose};  $displaylevel = 3 if $targets{verbose};
   
   
Line 160  if ($subdir eq '.') {
Line 161  if ($subdir eq '.') {
   
 my @mandoc = '../mandoc';  my @mandoc = '../mandoc';
 my @subdir_names;  my @subdir_names;
 my (@regress_testnames, @utf8_testnames, @html_testnames, @lint_testnames);  my (@regress_testnames, @utf8_testnames, @lint_testnames);
 my (%skip_ascii, %skip_man);  my (@html_testnames, @markdown_testnames);
   my (%skip_ascii, %skip_man, %skip_markdown);
   
 push @mandoc, split ' ', $vars{MOPTS} if $vars{MOPTS};  push @mandoc, split ' ', $vars{MOPTS} if $vars{MOPTS};
 delete $vars{MOPTS};  delete $vars{MOPTS};
Line 185  if (defined $vars{HTML_TARGETS}) {
Line 187  if (defined $vars{HTML_TARGETS}) {
         @html_testnames = split ' ', $vars{HTML_TARGETS};          @html_testnames = split ' ', $vars{HTML_TARGETS};
         delete $vars{HTML_TARGETS};          delete $vars{HTML_TARGETS};
 }  }
   if (defined $vars{MARKDOWN_TARGETS}) {
           @markdown_testnames = split ' ', $vars{MARKDOWN_TARGETS};
           delete $vars{MARKDOWN_TARGETS};
   }
 if (defined $vars{LINT_TARGETS}) {  if (defined $vars{LINT_TARGETS}) {
         @lint_testnames = split ' ', $vars{LINT_TARGETS};          @lint_testnames = split ' ', $vars{LINT_TARGETS};
         delete $vars{LINT_TARGETS};          delete $vars{LINT_TARGETS};
Line 200  if (defined $vars{SKIP_TMAN}) {
Line 206  if (defined $vars{SKIP_TMAN}) {
         $skip_man{$_} = 1 for split ' ', $vars{SKIP_TMAN};          $skip_man{$_} = 1 for split ' ', $vars{SKIP_TMAN};
         delete $vars{SKIP_TMAN};          delete $vars{SKIP_TMAN};
 }  }
   if (defined $vars{SKIP_MARKDOWN}) {
           $skip_markdown{$_} = 1 for split ' ', $vars{SKIP_MARKDOWN};
           delete $vars{SKIP_MARKDOWN};
   }
 if (keys %vars) {  if (keys %vars) {
         my @vars = keys %vars;          my @vars = keys %vars;
         die "unknown var(s) @vars";          die "unknown var(s) @vars";
 }  }
 map { $skip_ascii{$_} = 1; } @regress_testnames if $skip_ascii{ALL};  map { $skip_ascii{$_} = 1; } @regress_testnames if $skip_ascii{ALL};
 map { $skip_man{$_} = 1; } @regress_testnames if $skip_man{ALL};  map { $skip_man{$_} = 1; } @regress_testnames if $skip_man{ALL};
   map { $skip_markdown{$_} = 1; } @regress_testnames if $skip_markdown{ALL};
   
 # --- run targets ------------------------------------------------------  # --- run targets ------------------------------------------------------
   
Line 229  for my $testname (@regress_testnames) {
Line 240  for my $testname (@regress_testnames) {
                 $count_ascii++;                  $count_ascii++;
                 $count_total++;                  $count_total++;
                 print "@mandoc -T ascii $i\n" if $targets{verbose};                  print "@mandoc -T ascii $i\n" if $targets{verbose};
                 sysout $o, @mandoc, qw(-T ascii), $i                  sysout $o, @mandoc, qw(-I os=OpenBSD -T ascii), $i
                     and fail $subdir, $testname, 'ascii:mandoc';                      and fail $subdir, $testname, 'ascii:mandoc';
                 system @diff, $w, $o                  system @diff, $w, $o
                     and fail $subdir, $testname, 'ascii:diff';                      and fail $subdir, $testname, 'ascii:diff';
Line 240  for my $testname (@regress_testnames) {
Line 251  for my $testname (@regress_testnames) {
                 $count_man++;                  $count_man++;
                 $count_total++;                  $count_total++;
                 print "@mandoc -T man $i\n" if $targets{verbose};                  print "@mandoc -T man $i\n" if $targets{verbose};
                 sysout $m, @mandoc, qw(-T man), $i                  sysout $m, @mandoc, qw(-I os=OpenBSD -T man), $i
                     and fail $subdir, $testname, 'man:man';                      and fail $subdir, $testname, 'man:man';
                 print "@mandoc -man -T ascii $m\n" if $targets{verbose};                  print "@mandoc -man -T ascii $m\n" if $targets{verbose};
                 sysout $mo, @mandoc, qw(-man -T ascii -O mdoc), $m                  sysout $mo, @mandoc, qw(-man -I os=OpenBSD -T ascii -O mdoc), $m
                     and fail $subdir, $testname, 'man:mandoc';                      and fail $subdir, $testname, 'man:mandoc';
                 system @diff, $w, $mo                  system @diff, $w, $mo
                     and fail $subdir, $testname, 'man:diff';                      and fail $subdir, $testname, 'man:diff';
Line 268  for my $testname (@utf8_testnames) {
Line 279  for my $testname (@utf8_testnames) {
                 $count_utf8++;                  $count_utf8++;
                 $count_total++;                  $count_total++;
                 print "@mandoc -T utf8 $i\n" if $targets{verbose};                  print "@mandoc -T utf8 $i\n" if $targets{verbose};
                 sysout $o, @mandoc, qw(-T utf8), $i                  sysout $o, @mandoc, qw(-I os=OpenBSD -T utf8), $i
                     and fail $subdir, $testname, 'utf8:mandoc';                      and fail $subdir, $testname, 'utf8:mandoc';
                 system @diff, $w, $o                  system @diff, $w, $o
                     and fail $subdir, $testname, 'utf8:diff';                      and fail $subdir, $testname, 'utf8:diff';
Line 300  for my $testname (@html_testnames) {
Line 311  for my $testname (@html_testnames) {
         }          }
 }  }
   
   my $count_markdown = 0;
   for my $testname (@regress_testnames) {
           next if $onlytest && $testname ne $onlytest;
           my $i = "$subdir/$testname.in";
           my $o = "$subdir/$testname.mandoc_markdown";
           my $w = "$subdir/$testname.out_markdown";
           if ($targets{markdown} && !$skip_markdown{$testname}) {
                   $count_markdown++;
                   $count_total++;
                   print "@mandoc -T markdown $i\n" if $targets{verbose};
                   sysout $o, @mandoc, qw(-I os=OpenBSD -T markdown), $i
                       and fail $subdir, $testname, 'markdown:mandoc';
                   system @diff, $w, $o
                       and fail $subdir, $testname, 'markdown:diff';
           }
           if ($targets{clean}) {
                   print "rm $o\n" if $targets{verbose};
                   unlink $o;
           }
   }
   
 my $count_lint = 0;  my $count_lint = 0;
 for my $testname (@lint_testnames) {  for my $testname (@lint_testnames) {
         next if $onlytest && $testname ne $onlytest;          next if $onlytest && $testname ne $onlytest;
Line 309  for my $testname (@lint_testnames) {
Line 341  for my $testname (@lint_testnames) {
         if ($targets{lint}) {          if ($targets{lint}) {
                 $count_lint++;                  $count_lint++;
                 $count_total++;                  $count_total++;
                 print "@mandoc -T lint $i\n" if $targets{verbose};                  print "@mandoc -T lint -W all $i\n" if $targets{verbose};
                 syslint $o, @mandoc, qw(-T lint), $i                  syslint $o, @mandoc, qw(-I os=OpenBSD -T lint -W all), $i
                     and fail $subdir, $testname, 'lint:mandoc';                      and fail $subdir, $testname, 'lint:mandoc';
                 system @diff, $w, $o                  system @diff, $w, $o
                     and fail $subdir, $testname, 'lint:diff';                      and fail $subdir, $testname, 'lint:diff';
Line 334  print " $count_ascii ascii" if $count_ascii;
Line 366  print " $count_ascii ascii" if $count_ascii;
 print " $count_man man" if $count_man;  print " $count_man man" if $count_man;
 print " $count_utf8 utf8" if $count_utf8;  print " $count_utf8 utf8" if $count_utf8;
 print " $count_html html" if $count_html;  print " $count_html html" if $count_html;
   print " $count_markdown markdown" if $count_markdown;
 print " $count_lint lint" if $count_lint;  print " $count_lint lint" if $count_lint;
   
 if (@failures) {  if (@failures) {

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.7

CVSweb