aboutsummaryrefslogtreecommitdiff
path: root/tests/compiletest.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/compiletest.rs')
-rw-r--r--tests/compiletest.rs57
1 files changed, 0 insertions, 57 deletions
diff --git a/tests/compiletest.rs b/tests/compiletest.rs
deleted file mode 100644
index 58702eec..00000000
--- a/tests/compiletest.rs
+++ /dev/null
@@ -1,57 +0,0 @@
-use std::{fs, path::PathBuf, process::Command};
-
-use compiletest_rs::{common::Mode, Config};
-use tempdir::TempDir;
-
-#[test]
-fn cfail() {
- let mut config = Config::default();
-
- config.mode = Mode::CompileFail;
- config.src_base = PathBuf::from("tests/cfail");
- config.link_deps();
-
- // remove duplicate and trailing `-L` flags
- let mut s = String::new();
- if let Some(flags) = config.target_rustcflags.as_mut() {
- let mut iter = flags.split_whitespace().peekable();
-
- while let Some(flag) = iter.next() {
- if flag == "-L" && (iter.peek() == Some(&"-L") || iter.peek() == None) {
- iter.next();
- continue;
- }
-
- s += flag;
- s += " ";
- }
-
- // path to proc-macro crate
- s += "-L target/debug/deps ";
-
- // avoid "error: language item required, but not found: `eh_personality`"
- s += "-C panic=abort ";
- }
-
- let td = TempDir::new("rtfm").unwrap();
- for f in fs::read_dir("tests/cpass").unwrap() {
- let f = f.unwrap().path();
- let name = f.file_stem().unwrap().to_str().unwrap();
-
- assert!(Command::new("rustc")
- .args(s.split_whitespace())
- .arg(f.display().to_string())
- .arg("-o")
- .arg(td.path().join(name).display().to_string())
- .arg("-C")
- .arg("linker=true")
- .status()
- .unwrap()
- .success());
- }
-
- config.target_rustcflags = Some(s);
- config.clean_rmeta();
-
- compiletest_rs::run_tests(&config);
-}