Skip to main content

nils_build_info/
lib.rs

1pub const GIT_DESCRIBE: &str = env!("NILS_GIT_DESCRIBE");
2pub const RUSTC_VERSION: &str = env!("NILS_RUSTC_VERSION");
3
4pub fn long_version(pkg_version: &str) -> String {
5    format!("{pkg_version} ({GIT_DESCRIBE}, rustc {RUSTC_VERSION})")
6}
7
8#[cfg(test)]
9mod tests {
10    use super::*;
11
12    #[test]
13    fn long_version_preserves_package_version() {
14        let version = long_version("9.9.9");
15
16        assert!(version.starts_with("9.9.9 ("));
17        assert!(version.contains(GIT_DESCRIBE));
18        assert!(version.contains("rustc "));
19        assert!(version.ends_with(')'));
20    }
21
22    #[test]
23    fn build_metadata_consts_are_not_empty() {
24        assert!(!GIT_DESCRIBE.is_empty());
25        assert!(!RUSTC_VERSION.is_empty());
26    }
27}