X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=tests%2Ffmt.rs;h=be42f1fbb2023b4bb5bd8d4e2937be64cafa6f80;hb=1c8085d705849e528bf754e9db3b0e0521883d6d;hp=47be4ec125b729626ca8982cdb0077e718b74a86;hpb=aeac3da2c1e6774d8d2f3569d064fb756b2554ae;p=rust.git diff --git a/tests/fmt.rs b/tests/fmt.rs index 47be4ec125b..be42f1fbb20 100644 --- a/tests/fmt.rs +++ b/tests/fmt.rs @@ -1,14 +1,30 @@ +#![cfg_attr(feature = "deny-warnings", deny(warnings))] +#![warn(rust_2018_idioms, unused_lifetimes)] + +use std::path::PathBuf; +use std::process::Command; + #[test] fn fmt() { - if option_env!("RUSTC_TEST_SUITE").is_some() { + if option_env!("RUSTC_TEST_SUITE").is_some() || option_env!("NO_FMT_TEST").is_some() { + return; + } + + // Skip this test if nightly rustfmt is unavailable + let rustup_output = Command::new("rustup") + .args(&["component", "list", "--toolchain", "nightly"]) + .output() + .unwrap(); + assert!(rustup_output.status.success()); + let component_output = String::from_utf8_lossy(&rustup_output.stdout); + if !component_output.contains("rustfmt") { return; } - let root_dir = std::path::PathBuf::from(env!("CARGO_MANIFEST_DIR")); - let dev_dir = root_dir.join("clippy_dev"); - let output = std::process::Command::new("cargo") - .current_dir(dev_dir) - .args(&["run", "--", "fmt", "--check"]) + let root_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")); + let output = Command::new("cargo") + .current_dir(root_dir) + .args(&["dev", "fmt", "--check"]) .output() .unwrap(); @@ -18,6 +34,6 @@ fn fmt() { assert!( output.status.success(), - "Formatting check failed. Run `./util/dev fmt` to update formatting." + "Formatting check failed. Run `cargo dev fmt` to update formatting." ); }