extern crate std; use tinyvec::*; #[test] fn test_push_pop() { let mut tv = TinyVec::new(); assert_eq!(tv.pop(), None); tv.push(5_i32); assert_eq!(tv.pop(), Some(5_i32)); assert_eq!(tv.len(), 0); for i in 0 .. 10 { tv.push(i); } assert_eq!(tv.len(), 10); assert_eq!(tv.pop(), Some(9)); assert_eq!(tv.pop(), Some(8)); assert_eq!(tv.pop(), Some(7)); assert_eq!(tv.pop(), Some(6)); assert_eq!(tv.pop(), Some(5)); assert_eq!(tv.pop(), Some(4)); assert_eq!(tv.pop(), Some(3)); assert_eq!(tv.pop(), Some(2)); assert_eq!(tv.pop(), Some(1)); assert_eq!(tv.pop(), Some(0)); assert_eq!(tv.pop(), None); assert_eq!(tv.pop(), None); assert_eq!(tv.pop(), None); }