Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/project-model/src/toolchain_info/target_tuple.rs')
-rw-r--r--crates/project-model/src/toolchain_info/target_tuple.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/crates/project-model/src/toolchain_info/target_tuple.rs b/crates/project-model/src/toolchain_info/target_tuple.rs
index 55e033caec..0476de58f2 100644
--- a/crates/project-model/src/toolchain_info/target_tuple.rs
+++ b/crates/project-model/src/toolchain_info/target_tuple.rs
@@ -77,3 +77,29 @@ fn parse_output_cargo_config_build_target(stdout: String) -> anyhow::Result<Vec<
serde_json::from_str(trimmed).context("Failed to parse `build.target` as an array of target")
}
+
+#[cfg(test)]
+mod tests {
+ use paths::{AbsPathBuf, Utf8PathBuf};
+
+ use crate::{ManifestPath, Sysroot};
+
+ use super::*;
+
+ #[test]
+ fn cargo() {
+ let manifest_path = concat!(env!("CARGO_MANIFEST_DIR"), "/Cargo.toml");
+ let sysroot = Sysroot::empty();
+ let manifest_path =
+ ManifestPath::try_from(AbsPathBuf::assert(Utf8PathBuf::from(manifest_path))).unwrap();
+ let cfg = QueryConfig::Cargo(&sysroot, &manifest_path);
+ assert!(get(cfg, None, &FxHashMap::default()).is_ok());
+ }
+
+ #[test]
+ fn rustc() {
+ let sysroot = Sysroot::empty();
+ let cfg = QueryConfig::Rustc(&sysroot, env!("CARGO_MANIFEST_DIR").as_ref());
+ assert!(get(cfg, None, &FxHashMap::default()).is_ok());
+ }
+}