compiletest: Use the new non-libtest executor by default
Currently the new executor can be explicitly disabled by passing the `-N` flag to compiletest (e.g. `./x test ui -- -N`), but eventually that flag will be removed, alongside the removal of the libtest dependency.
This commit is contained in:
parent
1a5bf12f65
commit
bf4b2a94f7
2 changed files with 11 additions and 7 deletions
|
|
@ -415,10 +415,13 @@ pub struct Config {
|
|||
/// ABI tests.
|
||||
pub minicore_path: Utf8PathBuf,
|
||||
|
||||
/// If true, run tests with the "new" executor that was written to replace
|
||||
/// compiletest's dependency on libtest. Eventually this will become the
|
||||
/// default, and the libtest dependency will be removed.
|
||||
pub new_executor: bool,
|
||||
/// If true, disable the "new" executor, and use the older libtest-based
|
||||
/// executor to run tests instead. This is a temporary fallback, to make
|
||||
/// manual comparative testing easier if bugs are found in the new executor.
|
||||
///
|
||||
/// FIXME(Zalathar): Eventually remove this flag and remove the libtest
|
||||
/// dependency.
|
||||
pub no_new_executor: bool,
|
||||
}
|
||||
|
||||
impl Config {
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ pub fn parse_config(args: Vec<String>) -> Config {
|
|||
"COMMAND",
|
||||
)
|
||||
.reqopt("", "minicore-path", "path to minicore aux library", "PATH")
|
||||
.optflag("n", "new-executor", "enables the new test executor instead of using libtest")
|
||||
.optflag("N", "no-new-executor", "disables the new test executor, and uses libtest instead")
|
||||
.optopt(
|
||||
"",
|
||||
"debugger",
|
||||
|
|
@ -450,7 +450,7 @@ pub fn parse_config(args: Vec<String>) -> Config {
|
|||
|
||||
minicore_path: opt_path(matches, "minicore-path"),
|
||||
|
||||
new_executor: matches.opt_present("new-executor"),
|
||||
no_new_executor: matches.opt_present("no-new-executor"),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -577,9 +577,10 @@ pub fn run_tests(config: Arc<Config>) {
|
|||
// Delegate to the executor to filter and run the big list of test structures
|
||||
// created during test discovery. When the executor decides to run a test,
|
||||
// it will return control to the rest of compiletest by calling `runtest::run`.
|
||||
let res = if config.new_executor {
|
||||
let res = if !config.no_new_executor {
|
||||
Ok(executor::run_tests(&config, tests))
|
||||
} else {
|
||||
// FIXME(Zalathar): Eventually remove the libtest executor entirely.
|
||||
crate::executor::libtest::execute_tests(&config, tests)
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue