use std::path::PathBuf;
#[must_use]
pub fn rust_analyzer_available() -> bool {
std::process::Command::new("rust-analyzer")
.arg("--version")
.output()
.is_ok()
}
pub fn rust_workspace_path() -> PathBuf {
PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("tests/fixtures/rust_workspace")
}
pub fn config_fixture_path(name: &str) -> PathBuf {
PathBuf::from(env!("CARGO_MANIFEST_DIR"))
.join("tests/fixtures/configs")
.join(name)
}
#[macro_export]
macro_rules! skip_if_no_rust_analyzer {
() => {
if !$crate::common::test_utils::rust_analyzer_available() {
eprintln!("Skipping test: rust-analyzer not available");
return;
}
};
}