From 626a5c288f7f7622d823097afaf3f29c7ab70735 Mon Sep 17 00:00:00 2001 From: Nathan Fisher Date: Fri, 2 Feb 2024 11:43:46 -0500 Subject: [PATCH] Add test for `impl PartialCmp for Version` --- src/version.rs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/version.rs b/src/version.rs index d62d2e3..93df31a 100644 --- a/src/version.rs +++ b/src/version.rs @@ -211,7 +211,7 @@ impl PartialOrd for Version { #[cfg(test)] mod tests { use super::*; - use std::num::NonZeroU16; + use std::{num::NonZeroU16, str::FromStr}; #[test] fn from_str() { @@ -262,4 +262,19 @@ mod tests { } ) } + + #[test] + fn cmp() { + let astr = "3.14.0-x86_64"; + let bstr = "3.14.0_alpha1-x86_64"; + let cstr = "3.14_alpha1-amd64"; + let dstr = "3.14.0_beta3-x86_64"; + let estr = "3.14.0_git_c3poxxx.1705881493-x86_64"; + let fstr = "3.14.0_git_r2d2xxx.1705900000-x86_64"; + assert!(Version::from_str(astr).unwrap() > Version::from_str(bstr).unwrap()); + assert!(Version::from_str(cstr).unwrap() == Version::from_str(bstr).unwrap()); + assert!(Version::from_str(cstr).unwrap() < Version::from_str(dstr).unwrap()); + assert!(Version::from_str(dstr).unwrap() > Version::from_str(estr).unwrap()); + assert!(Version::from_str(fstr).unwrap() > Version::from_str(estr).unwrap()); + } }