From 758a4c5e6572302d50c412040f358a7791c1912e Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Wed, 27 Aug 2025 10:54:41 +0300 Subject: Move Position/SizeChange parsing tests to niri-ipc --- niri-ipc/src/lib.rs | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'niri-ipc/src') diff --git a/niri-ipc/src/lib.rs b/niri-ipc/src/lib.rs index fa524970..10d88de7 100644 --- a/niri-ipc/src/lib.rs +++ b/niri-ipc/src/lib.rs @@ -1609,3 +1609,61 @@ impl FromStr for ScaleToSet { Ok(Self::Specific(scale)) } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn parse_size_change() { + assert_eq!( + "10".parse::().unwrap(), + SizeChange::SetFixed(10), + ); + assert_eq!( + "+10".parse::().unwrap(), + SizeChange::AdjustFixed(10), + ); + assert_eq!( + "-10".parse::().unwrap(), + SizeChange::AdjustFixed(-10), + ); + assert_eq!( + "10%".parse::().unwrap(), + SizeChange::SetProportion(10.), + ); + assert_eq!( + "+10%".parse::().unwrap(), + SizeChange::AdjustProportion(10.), + ); + assert_eq!( + "-10%".parse::().unwrap(), + SizeChange::AdjustProportion(-10.), + ); + + assert!("-".parse::().is_err()); + assert!("10% ".parse::().is_err()); + } + + #[test] + fn parse_position_change() { + assert_eq!( + "10".parse::().unwrap(), + PositionChange::SetFixed(10.), + ); + assert_eq!( + "+10".parse::().unwrap(), + PositionChange::AdjustFixed(10.), + ); + assert_eq!( + "-10".parse::().unwrap(), + PositionChange::AdjustFixed(-10.), + ); + + assert!("10%".parse::().is_err()); + assert!("+10%".parse::().is_err()); + assert!("-10%".parse::().is_err()); + assert!("-".parse::().is_err()); + assert!("10% ".parse::().is_err()); + } +} -- cgit