ソースを参照

autotest: de-duplicate error reporting paths

Oswald Buddenhagen 8 年 前
コミット
2da7951fe0
1 ファイル変更19 行追加43 行削除
  1. 19 43
      src/run-tests.pl

+ 19 - 43
src/run-tests.pl

@@ -616,24 +616,17 @@ sub test($$$@)
 	&writecfg(@sfx);
 
 	my ($xc, @ret) = runsync("-J");
-	if ($xc) {
+	if ($xc || ckchan("slave/.mbsyncstate.new", $tx)) {
 		print "Input:\n";
 		printchan($sx);
 		print "Options:\n";
 		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ]\n";
-		print "Debug output:\n";
-		print @ret;
-		exit 1;
-	}
-	if (ckchan("slave/.mbsyncstate.new", $tx)) {
-		print "Input:\n";
-		printchan($sx);
-		print "Options:\n";
-		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ]\n";
-		print "Expected result:\n";
-		printchan($tx);
-		print "Actual result:\n";
-		showchan("slave/.mbsyncstate.new");
+		if (!$xc) {
+			print "Expected result:\n";
+			printchan($tx);
+			print "Actual result:\n";
+			showchan("slave/.mbsyncstate.new");
+		}
 		print "Debug output:\n";
 		print @ret;
 		exit 1;
@@ -644,52 +637,35 @@ sub test($$$@)
 	my @nj = <FILE>;
 	close FILE;
 	($xc, @ret) = runsync("-0 --no-expunge");
-	if ($xc) {
+	if ($xc || ckstate("slave/.mbsyncstate", @{ $$tx[2] })) {
 		print "Journal replay failed.\n";
 		print "Options:\n";
 		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ], [ \"-0\", \"--no-expunge\" ]\n";
 		print "Old State:\n";
 		printstate(@{ $$sx[2] });
 		print "Journal:\n".join("", @nj)."\n";
-		print "Debug output:\n";
-		print @ret;
-		exit 1;
-	}
-	if (ckstate("slave/.mbsyncstate", @{ $$tx[2] })) {
-		print "Journal replay failed.\n";
-		print "Options:\n";
-		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ], [ \"-0\", \"--no-expunge\" ]\n";
-		print "Old State:\n";
-		printstate(@{ $$sx[2] });
-		print "Journal:\n".join("", @nj)."\n";
-		print "Expected New State:\n";
-		printstate(@{ $$tx[2] });
-		print "New State:\n";
-		showstate("slave/.mbsyncstate");
+		if (!$xc) {
+			print "Expected New State:\n";
+			printstate(@{ $$tx[2] });
+			print "New State:\n";
+			showstate("slave/.mbsyncstate");
+		}
 		print "Debug output:\n";
 		print @ret;
 		exit 1;
 	}
 
 	($xc, @ret) = runsync("");
-	if ($xc) {
+	if ($xc || ckchan("slave/.mbsyncstate", $tx)) {
 		print "Idempotence verification run failed.\n";
 		print "Input == Expected result:\n";
 		printchan($tx);
 		print "Options:\n";
 		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ]\n";
-		print "Debug output:\n";
-		print @ret;
-		exit 1;
-	}
-	if (ckchan("slave/.mbsyncstate", $tx)) {
-		print "Idempotence verification run failed.\n";
-		print "Input == Expected result:\n";
-		printchan($tx);
-		print "Options:\n";
-		print " [ ".join(", ", map('"'.qm($_).'"', @sfx))." ]\n";
-		print "Actual result:\n";
-		showchan("slave/.mbsyncstate");
+		if (!$xc) {
+			print "Actual result:\n";
+			showchan("slave/.mbsyncstate");
+		}
 		print "Debug output:\n";
 		print @ret;
 		exit 1;