pub fn version() -> &'static str {
env!("CARGO_PKG_VERSION")
}
pub fn full_version() -> String {
format!("zinit v{}", version())
}
pub fn binary_version(binary: &str) -> String {
format!("{} v{}", binary, version())
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_version_format() {
let ver = version();
assert!(!ver.is_empty());
assert!(ver.chars().next().unwrap().is_numeric());
}
#[test]
fn test_full_version_format() {
let full = full_version();
assert!(full.starts_with("zinit v"));
}
#[test]
fn test_binary_version_format() {
let bin_ver = binary_version("zinit-server");
assert!(bin_ver.starts_with("zinit-server v"));
}
}