cargotest: do not run quickcheck tests in xsv
This commit is contained in:
parent
41419e7036
commit
77be253c9b
1 changed files with 28 additions and 1 deletions
|
@ -11,6 +11,8 @@ struct Test {
|
|||
packages: &'static [&'static str],
|
||||
features: Option<&'static [&'static str]>,
|
||||
manifest_path: Option<&'static str>,
|
||||
/// `filters` are passed to libtest (i.e., after a `--` in the `cargo test` invocation).
|
||||
filters: &'static [&'static str],
|
||||
}
|
||||
|
||||
const TEST_REPOS: &[Test] = &[
|
||||
|
@ -22,6 +24,7 @@ const TEST_REPOS: &[Test] = &[
|
|||
packages: &[],
|
||||
features: None,
|
||||
manifest_path: None,
|
||||
filters: &[],
|
||||
},
|
||||
Test {
|
||||
name: "ripgrep",
|
||||
|
@ -31,6 +34,7 @@ const TEST_REPOS: &[Test] = &[
|
|||
packages: &[],
|
||||
features: None,
|
||||
manifest_path: None,
|
||||
filters: &[],
|
||||
},
|
||||
Test {
|
||||
name: "tokei",
|
||||
|
@ -40,6 +44,7 @@ const TEST_REPOS: &[Test] = &[
|
|||
packages: &[],
|
||||
features: None,
|
||||
manifest_path: None,
|
||||
filters: &[],
|
||||
},
|
||||
Test {
|
||||
name: "xsv",
|
||||
|
@ -49,6 +54,21 @@ const TEST_REPOS: &[Test] = &[
|
|||
packages: &[],
|
||||
features: None,
|
||||
manifest_path: None,
|
||||
// Many tests here use quickcheck and some of them can fail randomly, so only run deterministic tests.
|
||||
filters: &[
|
||||
"test_flatten::",
|
||||
"test_fmt::",
|
||||
"test_headers::",
|
||||
"test_index::",
|
||||
"test_join::",
|
||||
"test_partition::",
|
||||
"test_search::",
|
||||
"test_select::",
|
||||
"test_slice::",
|
||||
"test_split::",
|
||||
"test_stats::",
|
||||
"test_table::",
|
||||
],
|
||||
},
|
||||
Test {
|
||||
name: "servo",
|
||||
|
@ -60,6 +80,7 @@ const TEST_REPOS: &[Test] = &[
|
|||
packages: &["selectors"],
|
||||
features: None,
|
||||
manifest_path: None,
|
||||
filters: &[],
|
||||
},
|
||||
Test {
|
||||
name: "diesel",
|
||||
|
@ -75,6 +96,7 @@ const TEST_REPOS: &[Test] = &[
|
|||
// not any other crate present in the diesel workspace
|
||||
// (This is required to set the feature flags above)
|
||||
manifest_path: Some("diesel/Cargo.toml"),
|
||||
filters: &[],
|
||||
},
|
||||
];
|
||||
|
||||
|
@ -97,7 +119,8 @@ fn test_repo(cargo: &Path, out_dir: &Path, test: &Test) {
|
|||
if let Some(lockfile) = test.lock {
|
||||
fs::write(&dir.join("Cargo.lock"), lockfile).unwrap();
|
||||
}
|
||||
if !run_cargo_test(cargo, &dir, test.packages, test.features, test.manifest_path) {
|
||||
if !run_cargo_test(cargo, &dir, test.packages, test.features, test.manifest_path, test.filters)
|
||||
{
|
||||
panic!("tests failed for {}", test.repo);
|
||||
}
|
||||
}
|
||||
|
@ -155,6 +178,7 @@ fn run_cargo_test(
|
|||
packages: &[&str],
|
||||
features: Option<&[&str]>,
|
||||
manifest_path: Option<&str>,
|
||||
filters: &[&str],
|
||||
) -> bool {
|
||||
let mut command = Command::new(cargo_path);
|
||||
command.arg("test");
|
||||
|
@ -174,6 +198,9 @@ fn run_cargo_test(
|
|||
command.arg("-p").arg(name);
|
||||
}
|
||||
|
||||
command.arg("--");
|
||||
command.args(filters);
|
||||
|
||||
let status = command
|
||||
// Disable rust-lang/cargo's cross-compile tests
|
||||
.env("CFG_DISABLE_CROSS_TESTS", "1")
|
||||
|
|
Loading…
Add table
Reference in a new issue