@@ -2273,6 +2273,33 @@ mod tests {
2273
2273
assert_eq ! ( it. next( ) , None ) ;
2274
2274
}
2275
2275
2276
+ #[ test]
2277
+ fn test_double_ended_enumerate ( ) {
2278
+ let xs = [ 1 , 2 , 3 , 4 , 5 , 6 ] ;
2279
+ let mut it = xs. iter ( ) . map ( |& x| x) . enumerate ( ) ;
2280
+ assert_eq ! ( it. next( ) , Some ( ( 0 , 1 ) ) ) ;
2281
+ assert_eq ! ( it. next( ) , Some ( ( 1 , 2 ) ) ) ;
2282
+ assert_eq ! ( it. next_back( ) , Some ( ( 5 , 6 ) ) ) ;
2283
+ assert_eq ! ( it. next_back( ) , Some ( ( 4 , 5 ) ) ) ;
2284
+ assert_eq ! ( it. next_back( ) , Some ( ( 3 , 4 ) ) ) ;
2285
+ assert_eq ! ( it. next_back( ) , Some ( ( 2 , 3 ) ) ) ;
2286
+ assert_eq ! ( it. next( ) , None ) ;
2287
+ }
2288
+
2289
+ #[ test]
2290
+ fn test_double_ended_zip ( ) {
2291
+ let xs = [ 1 , 2 , 3 , 4 , 5 , 6 ] ;
2292
+ let ys = [ 1 , 2 , 3 , 7 ] ;
2293
+ let a = xs. iter ( ) . map ( |& x| x) ;
2294
+ let b = ys. iter ( ) . map ( |& x| x) ;
2295
+ let mut it = a. zip ( b) ;
2296
+ assert_eq ! ( it. next( ) , Some ( ( 1 , 1 ) ) ) ;
2297
+ assert_eq ! ( it. next( ) , Some ( ( 2 , 2 ) ) ) ;
2298
+ assert_eq ! ( it. next_back( ) , Some ( ( 4 , 7 ) ) ) ;
2299
+ assert_eq ! ( it. next_back( ) , Some ( ( 3 , 3 ) ) ) ;
2300
+ assert_eq ! ( it. next( ) , None ) ;
2301
+ }
2302
+
2276
2303
#[ test]
2277
2304
fn test_double_ended_filter ( ) {
2278
2305
let xs = [ 1 , 2 , 3 , 4 , 5 , 6 ] ;
0 commit comments