From: Martin Mares Date: Thu, 5 Jul 2007 09:34:35 +0000 (+0200) Subject: Perform proper merging of grouped testcases. X-Git-Tag: python-dummy-working~299 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=41059938d4d279dbb3c6bf6712f8c84759f5d5c0;p=moe.git Perform proper merging of grouped testcases. By default, we show all testcases, but the total number of points per task is calculated from merged groups. The "--merged" switch shows merged cases instead. The "--split" switch is gone. --- diff --git a/bin/mo-score b/bin/mo-score index 0f58f3d..7fb1a50 100755 --- a/bin/mo-score +++ b/bin/mo-score @@ -6,8 +6,8 @@ $html = 0; $tex = 0; $extras = 0; $alt = 0; -$split = 0; -$usage = "Usage: mo-score [--detail] [--alt] [--extras] [--html] [--tex] [--split] ..."; +$merged = 0; +$usage = "Usage: mo-score [--detail] [--alt] [--extras] [--html] [--tex] [--merged] ..."; while (($arg = $ARGV[0]) =~ /^--([a-z]+)$/) { shift @ARGV; $var = "\$$1"; @@ -64,7 +64,8 @@ foreach $u (keys %users) { $tpts = $2; $trem = $3; $trem =~ s/\[.*//; - $ttest =~ s/[^0-9]//g unless $split; + ($ttest_merged = $ttest) =~ s/[^0-9]//g; + $ttest = $ttest_merged if $merged; $known_tests{$t}{$ttest} = 1; $cmt = $tpts; if ($tpts == 0 && $trem ne "OK") { @@ -88,12 +89,15 @@ foreach $u (keys %users) { $results{$u}{$t}{$ttest} = $tpts; $comment{$u}{$t}{$ttest} = $cmt; } + if (!defined($results_merged{$u}{$t}{$ttest_merged}) || $results_merged{$u}{$t}{$ttest_merged} > $tpts) { + $results_merged{$u}{$t}{$ttest_merged} = $tpts; + } } close X; } foreach my $t (keys %known_tasks) { $total{$u}{$t} = 0; - foreach my $pts (values %{$results{$u}{$t}}) { $total{$u}{$t} += $pts; } + foreach my $pts (values %{$results_merged{$u}{$t}}) { $total{$u}{$t} += $pts; } } closedir D; }