Add pfail targets for parse-fail tests
This commit is contained in:
parent
5550bebcaa
commit
6824f1365d
5 changed files with 21 additions and 7 deletions
|
|
@ -15,6 +15,7 @@ use std::str::FromStr;
|
|||
#[derive(Clone, Copy, PartialEq, Debug)]
|
||||
pub enum Mode {
|
||||
CompileFail,
|
||||
ParseFail,
|
||||
RunFail,
|
||||
RunPass,
|
||||
RunPassValgrind,
|
||||
|
|
@ -29,6 +30,7 @@ impl FromStr for Mode {
|
|||
fn from_str(s: &str) -> Result<Mode, ()> {
|
||||
match s {
|
||||
"compile-fail" => Ok(CompileFail),
|
||||
"parse-fail" => Ok(ParseFail),
|
||||
"run-fail" => Ok(RunFail),
|
||||
"run-pass" => Ok(RunPass),
|
||||
"run-pass-valgrind" => Ok(RunPassValgrind),
|
||||
|
|
@ -45,6 +47,7 @@ impl fmt::Display for Mode {
|
|||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
fmt::Display::fmt(match *self {
|
||||
CompileFail => "compile-fail",
|
||||
ParseFail => "parse-fail",
|
||||
RunFail => "run-fail",
|
||||
RunPass => "run-pass",
|
||||
RunPassValgrind => "run-pass-valgrind",
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ pub fn parse_config(args: Vec<String> ) -> Config {
|
|||
reqopt("", "aux-base", "directory to find auxiliary test files", "PATH"),
|
||||
reqopt("", "stage-id", "the target-stage identifier", "stageN-TARGET"),
|
||||
reqopt("", "mode", "which sort of compile tests to run",
|
||||
"(compile-fail|run-fail|run-pass|run-pass-valgrind|pretty|debug-info)"),
|
||||
"(compile-fail|parse-fail|run-fail|run-pass|run-pass-valgrind|pretty|debug-info)"),
|
||||
optflag("", "ignored", "run tests marked as ignored"),
|
||||
optopt("", "runtool", "supervisor program to run tests under \
|
||||
(eg. emulator, valgrind)", "PROGRAM"),
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
use self::TargetLocation::*;
|
||||
|
||||
use common::Config;
|
||||
use common::{CompileFail, Pretty, RunFail, RunPass, RunPassValgrind, DebugInfoGdb};
|
||||
use common::{CompileFail, ParseFail, Pretty, RunFail, RunPass, RunPassValgrind, DebugInfoGdb};
|
||||
use common::{Codegen, DebugInfoLldb};
|
||||
use errors;
|
||||
use header::TestProps;
|
||||
|
|
@ -66,6 +66,7 @@ pub fn run_metrics(config: Config, testfile: String, mm: &mut MetricMap) {
|
|||
debug!("loaded props");
|
||||
match config.mode {
|
||||
CompileFail => run_cfail_test(&config, &props, &testfile),
|
||||
ParseFail => run_cfail_test(&config, &props, &testfile),
|
||||
RunFail => run_rfail_test(&config, &props, &testfile),
|
||||
RunPass => run_rpass_test(&config, &props, &testfile),
|
||||
RunPassValgrind => run_valgrind_test(&config, &props, &testfile),
|
||||
|
|
@ -88,7 +89,7 @@ fn run_cfail_test(config: &Config, props: &TestProps, testfile: &Path) {
|
|||
let proc_res = compile_test(config, props, testfile);
|
||||
|
||||
if proc_res.status.success() {
|
||||
fatal_proc_rec("compile-fail test compiled successfully!",
|
||||
fatal_proc_rec(&format!("{} test compiled successfully!", config.mode)[],
|
||||
&proc_res);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue