Run expansion tests only if rustfmt is present
This commit is contained in:
parent
e2ff603587
commit
23db3a41e7
@ -12,11 +12,14 @@ unstable = ["serde/unstable"]
|
||||
[dependencies]
|
||||
serde = { path = "../serde" }
|
||||
|
||||
[build-dependencies]
|
||||
toolchain_find = "0.1"
|
||||
|
||||
[dev-dependencies]
|
||||
fnv = "1.0"
|
||||
macrotest = "=1.0.0"
|
||||
rustversion = "1.0"
|
||||
serde = { path = "../serde", features = ["rc", "derive"] }
|
||||
serde_derive = { path = "../serde_derive", features = ["deserialize_in_place"] }
|
||||
serde_test = { path = "../serde_test" }
|
||||
trybuild = "1.0"
|
||||
macrotest = "=1.0.0"
|
||||
|
@ -1,13 +1,13 @@
|
||||
use std::process::{Command, ExitStatus, Stdio};
|
||||
|
||||
#[cfg(not(windows))]
|
||||
const CARGO_EXPAND: &str = "cargo-expand";
|
||||
fn has_cargo_expand() -> bool {
|
||||
let cargo_expand = if cfg!(windows) {
|
||||
"cargo-expand.exe"
|
||||
} else {
|
||||
"cargo-expand"
|
||||
};
|
||||
|
||||
#[cfg(windows)]
|
||||
const CARGO_EXPAND: &str = "cargo-expand.exe";
|
||||
|
||||
fn main() {
|
||||
if Command::new(CARGO_EXPAND)
|
||||
Command::new(cargo_expand)
|
||||
.arg("--version")
|
||||
.stdin(Stdio::null())
|
||||
.stdout(Stdio::null())
|
||||
@ -16,7 +16,14 @@ fn main() {
|
||||
.as_ref()
|
||||
.map(ExitStatus::success)
|
||||
.unwrap_or(false)
|
||||
{
|
||||
println!("cargo:rustc-cfg=cargo_expand");
|
||||
}
|
||||
|
||||
fn has_rustfmt() -> bool {
|
||||
toolchain_find::find_installed_component("rustfmt").is_some()
|
||||
}
|
||||
|
||||
fn main() {
|
||||
if has_cargo_expand() && has_rustfmt() {
|
||||
println!("cargo:rustc-cfg=expandtest");
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
#[cfg_attr(target_os = "emscripten", ignore)]
|
||||
#[cfg_attr(not(cargo_expand), ignore)]
|
||||
#[cfg_attr(not(expandtest), ignore)]
|
||||
#[rustversion::attr(not(nightly), ignore)]
|
||||
#[test]
|
||||
fn expandtest() {
|
||||
|
Loading…
Reference in New Issue
Block a user