- `*.sy`: A [SyGuS](http://sygus.seas.upenn.edu/files/SyGuS-IF.pdf) benchmark
- `*.p`: A [TPTP](http://www.cs.miami.edu/~tptp/TPTP/SyntaxBNF.html) benchmark
-## Expected Output, Error, and Exit Codes
+## Directives
In the regression file, you can specify expected stdout, stderr, and exit codes
with the following directives:
as a requirement, refer to cvc5's `--show-config` output. Features can also be
excluded by adding the `no-` prefix, e.g. `no-cryptominisat` means that the
test is not valid for builds that include CryptoMiniSat support.
+
+To disable a specific type of test, the `DISABLE-TESTER` directive can be used.
+The following example disables the proof tester for a regression:
+
+```
+; DISABLE-TESTER: proof
+```
+
+Multiple testers can be disabled using multiple `DISABLE-TESTER` directives.
EXIT = "EXIT:"
COMMAND_LINE = "COMMAND-LINE:"
REQUIRES = "REQUIRES:"
+DISABLE_TESTER = "DISABLE-TESTER:"
EXIT_OK = 0
EXIT_FAILURE = 1
command_lines.append(line[len(COMMAND_LINE) :].strip())
elif line.startswith(REQUIRES):
requires.append(line[len(REQUIRES) :].strip())
+ elif line.startswith(DISABLE_TESTER):
+ disable_tester = line[len(DISABLE_TESTER) :].strip()
+ if disable_tester not in g_testers:
+ print("Unknown tester: {}".format(disable_tester))
+ return EXIT_FAILURE
+ testers.remove(disable_tester)
+
expected_output = expected_output.strip()
expected_error = expected_error.strip()