1 use super::*; 2 3 use crate::Flags; 4 5 #[test] cases()6fn cases() { 7 case(TestFlags::from_bits_retain(0)); 8 9 case(TestFlags::from_bits_retain(1 << 3)); 10 11 case(TestFlags::ABC | TestFlags::from_bits_retain(1 << 3)); 12 13 case(TestZero::empty()); 14 15 case(TestZero::all()); 16 17 case(TestFlags::from_bits_retain(1 << 3) | TestFlags::all()); 18 } 19 20 #[track_caller] case<T: Flags + std::fmt::Debug>(mut flags: T) where T: std::fmt::Debug + PartialEq + Copy,21fn case<T: Flags + std::fmt::Debug>(mut flags: T) 22 where 23 T: std::fmt::Debug + PartialEq + Copy, 24 { 25 flags.clear(); 26 assert_eq!(flags, T::empty(), "{:?}.clear()", flags); 27 } 28