Move the TestPaths structure from libtest to compiletest.
This structure doesn't seem to be used by libtest itself. It is used by compiletest, but never passed on to anything externally. This makes it easier to get the testing framework to work for CloudABI crossbuilds, as CloudABI currently lacks PathBuf, which is used by TestPaths.
This commit is contained in:
@@ -203,13 +203,6 @@ pub struct TestDesc {
|
|||||||
pub allow_fail: bool,
|
pub allow_fail: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone)]
|
|
||||||
pub struct TestPaths {
|
|
||||||
pub file: PathBuf, // e.g., compile-test/foo/bar/baz.rs
|
|
||||||
pub base: PathBuf, // e.g., compile-test, auxiliary
|
|
||||||
pub relative_dir: PathBuf, // e.g., foo/bar
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct TestDescAndFn {
|
pub struct TestDescAndFn {
|
||||||
pub desc: TestDesc,
|
pub desc: TestDesc,
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ use std::fmt;
|
|||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use test::{ColorConfig, TestPaths};
|
use test::ColorConfig;
|
||||||
|
|
||||||
#[derive(Clone, Copy, PartialEq, Debug)]
|
#[derive(Clone, Copy, PartialEq, Debug)]
|
||||||
pub enum Mode {
|
pub enum Mode {
|
||||||
@@ -222,6 +222,13 @@ pub struct Config {
|
|||||||
pub nodejs: Option<String>,
|
pub nodejs: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Clone)]
|
||||||
|
pub struct TestPaths {
|
||||||
|
pub file: PathBuf, // e.g., compile-test/foo/bar/baz.rs
|
||||||
|
pub base: PathBuf, // e.g., compile-test, auxiliary
|
||||||
|
pub relative_dir: PathBuf, // e.g., foo/bar
|
||||||
|
}
|
||||||
|
|
||||||
/// Used by `ui` tests to generate things like `foo.stderr` from `foo.rs`.
|
/// Used by `ui` tests to generate things like `foo.stderr` from `foo.rs`.
|
||||||
pub fn expected_output_path(testpaths: &TestPaths, revision: Option<&str>, kind: &str) -> PathBuf {
|
pub fn expected_output_path(testpaths: &TestPaths, revision: Option<&str>, kind: &str) -> PathBuf {
|
||||||
assert!(UI_EXTENSIONS.contains(&kind));
|
assert!(UI_EXTENSIONS.contains(&kind));
|
||||||
|
|||||||
@@ -33,10 +33,10 @@ use std::path::{Path, PathBuf};
|
|||||||
use std::process::Command;
|
use std::process::Command;
|
||||||
use filetime::FileTime;
|
use filetime::FileTime;
|
||||||
use getopts::Options;
|
use getopts::Options;
|
||||||
use common::Config;
|
use common::{Config, TestPaths};
|
||||||
use common::{DebugInfoGdb, DebugInfoLldb, Mode, Pretty};
|
use common::{DebugInfoGdb, DebugInfoLldb, Mode, Pretty};
|
||||||
use common::{expected_output_path, UI_EXTENSIONS};
|
use common::{expected_output_path, UI_EXTENSIONS};
|
||||||
use test::{ColorConfig, TestPaths};
|
use test::ColorConfig;
|
||||||
use util::logv;
|
use util::logv;
|
||||||
|
|
||||||
use self::header::EarlyProps;
|
use self::header::EarlyProps;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
// option. This file may not be copied, modified, or distributed
|
// option. This file may not be copied, modified, or distributed
|
||||||
// except according to those terms.
|
// except according to those terms.
|
||||||
|
|
||||||
use common::Config;
|
use common::{Config, TestPaths};
|
||||||
use common::{CompileFail, ParseFail, Pretty, RunFail, RunPass, RunPassValgrind};
|
use common::{CompileFail, ParseFail, Pretty, RunFail, RunPass, RunPassValgrind};
|
||||||
use common::{Codegen, CodegenUnits, DebugInfoGdb, DebugInfoLldb, Rustdoc};
|
use common::{Codegen, CodegenUnits, DebugInfoGdb, DebugInfoLldb, Rustdoc};
|
||||||
use common::{Incremental, MirOpt, RunMake, Ui};
|
use common::{Incremental, MirOpt, RunMake, Ui};
|
||||||
@@ -18,7 +18,6 @@ use errors::{self, Error, ErrorKind};
|
|||||||
use filetime::FileTime;
|
use filetime::FileTime;
|
||||||
use json;
|
use json;
|
||||||
use header::TestProps;
|
use header::TestProps;
|
||||||
use test::TestPaths;
|
|
||||||
use util::logv;
|
use util::logv;
|
||||||
use regex::Regex;
|
use regex::Regex;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user