diff --git a/src/deqp/config/args.volt b/src/deqp/config/args.volt index 7bf5877..b68741b 100644 --- a/src/deqp/config/args.volt +++ b/src/deqp/config/args.volt @@ -16,7 +16,7 @@ import deqp.config.info; fn parseArgs(settings: Settings, args: string[]) { - printFailing: bool; + printFailing, noRerunTests: bool; threads, batchSize, randomize: i32; ctsBuildDir, resultsFile, tempDir, regressionFile: string; testNamesFiles, regressionFiles: string[]; @@ -27,6 +27,7 @@ fn parseArgs(settings: Settings, args: string[]) watt.getopt(ref args, "test-names-file", ref testNamesFiles); watt.getopt(ref args, "results-file", ref resultsFile); watt.getopt(ref args, "temp-dir", ref tempDir); + watt.getopt(ref args, "no-rerun-tests", ref noRerunTests); watt.getopt(ref args, "print-failing", ref printFailing); watt.getopt(ref args, "randomize", ref randomize); watt.getopt(ref args, "check|regression-file", ref regressionFiles); @@ -56,6 +57,9 @@ fn parseArgs(settings: Settings, args: string[]) if (printFailing) { settings.printFailing = printFailing; } + if (noRerunTests) { + settings.noRerunTests = noRerunTests; + } if (regressionFiles !is null) { settings.regressionFiles = regressionFiles; } diff --git a/src/deqp/config/info.volt b/src/deqp/config/info.volt index bc0396a..8527da4 100644 --- a/src/deqp/config/info.volt +++ b/src/deqp/config/info.volt @@ -32,6 +32,7 @@ fn printConfig(s: Settings) info("\tthreads = %s", s.threads); info("\tresultsFile = '%s'", s.resultsFile); info("\ttempDir = '%s'", s.tempDir); + info("\tnoRerunTests = %s", s.noRerunTests); } fn printAllArgsAndConfig() diff --git a/src/deqp/config/parser.volt b/src/deqp/config/parser.volt index ddced74..7c80378 100644 --- a/src/deqp/config/parser.volt +++ b/src/deqp/config/parser.volt @@ -55,6 +55,9 @@ fn parseConfigFile(s: Settings) if (root.hasKey("printFailing")) { s.printFailing = root["printFailing"].boolean(); } + if (root.hasKey("noRerunTests")) { + s.noRerunTests = root["noRerunTests"].boolean(); + } if (root.hasKey("regressionFile")) { s.resultsFile = root["regressionFile"].str(); } diff --git a/src/deqp/driver.volt b/src/deqp/driver.volt index b585912..797e80a 100644 --- a/src/deqp/driver.volt +++ b/src/deqp/driver.volt @@ -33,6 +33,7 @@ public: testNamesFiles: string[]; ctsBuildDir: string; + noRerunTests: bool = false; batchSize: u32; @@ -260,6 +261,10 @@ public: info(" :: Rerunning failed test(s)."); + if (settings.noRerunTests) { + info("\tRerunning tests disabled by arguments or settings"); + } + if ((total / 8) > (bad - inc)) { mask |= 1u << Result.Fail; mask |= 1u << Result.InternalError;