diff --git a/src/lib.rs b/src/lib.rs index 8f659a9..77dd241 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -79,10 +79,10 @@ where mod tests { use super::*; - struct Small([u8; 48]); + struct Small([u32; 6]); impl Iterator for Small { - type Item = u8; + type Item = u32; fn next(&mut self) -> Option { let ret = self.0.get(self.0[0] as usize).copied(); self.0[0] += 1; @@ -92,16 +92,25 @@ mod tests { #[test] fn it_works() { - let mut it = Small([42; 48]); + let mut it = Small([0, 42, 13, 37, 29, 11]); + assert_eq!(it.next(), Some(0)); assert_eq!(it.next(), Some(42)); + assert_eq!(it.next(), Some(13)); - let mut it: Dyn> = Small([42; 48]).into(); - assert_eq!(it.next(), Some(42)); + let mut it: Dyn> = it.into(); + assert_eq!(it.next(), Some(37)); + assert_eq!(it.next(), Some(29)); + assert_eq!(it.next(), Some(11)); + assert_eq!(it.next(), None); + assert_eq!(it.next(), None); } #[test] fn vec() { - let mut it: Dyn> = vec![42; 48].into_iter().into(); + let mut it: Dyn> = vec![42, 13, 37].into_iter().into(); assert_eq!(it.next(), Some(42)); + assert_eq!(it.next(), Some(13)); + assert_eq!(it.next(), Some(37)); + assert_eq!(it.next(), None); } }