@@ -273,7 +273,7 @@ mod tests {
273
273
use super :: * ;
274
274
use std:: cmp:: Eq ;
275
275
use std:: kinds:: Copy ;
276
- use std:: int;
276
+ use std:: { int, uint } ;
277
277
use extra:: test;
278
278
279
279
#[ test]
@@ -536,6 +536,8 @@ mod tests {
536
536
#[ test]
537
537
fn test_iter ( ) {
538
538
let mut d = Deque :: new ( ) ;
539
+ assert_eq ! ( d. iter( ) . next( ) , None ) ;
540
+
539
541
for int:: range( 0 , 5 ) |i| {
540
542
d. add_back ( i) ;
541
543
}
@@ -550,6 +552,8 @@ mod tests {
550
552
#[ test]
551
553
fn test_rev_iter ( ) {
552
554
let mut d = Deque :: new ( ) ;
555
+ assert_eq ! ( d. rev_iter( ) . next( ) , None ) ;
556
+
553
557
for int:: range( 0 , 5 ) |i| {
554
558
d. add_back ( i) ;
555
559
}
@@ -561,6 +565,52 @@ mod tests {
561
565
assert_eq ! ( d. rev_iter( ) . collect:: <~[ & int] >( ) , ~[ & 4 , & 3 , & 2 , & 1 , & 0 , & 6 , & 7 , & 8 ] ) ;
562
566
}
563
567
568
+ #[ test]
569
+ fn test_mut_iter( ) {
570
+ let mut d = Deque :: new ( ) ;
571
+ assert ! ( d. mut_iter( ) . next( ) . is_none( ) ) ;
572
+
573
+ for uint:: range( 0 , 3 ) |i| {
574
+ d. add_front ( i) ;
575
+ }
576
+
577
+ for d. mut_iter( ) . enumerate( ) . advance |( i, elt) | {
578
+ assert_eq ! ( * elt, 2 - i) ;
579
+ * elt = i;
580
+ }
581
+
582
+ {
583
+ let mut it = d. mut_iter( ) ;
584
+ assert_eq ! ( * it. next( ) . unwrap( ) , 0 ) ;
585
+ assert_eq ! ( * it. next( ) . unwrap( ) , 1 ) ;
586
+ assert_eq ! ( * it. next( ) . unwrap( ) , 2 ) ;
587
+ assert ! ( it. next( ) . is_none( ) ) ;
588
+ }
589
+ }
590
+
591
+ #[ test]
592
+ fn test_mut_rev_iter ( ) {
593
+ let mut d = Deque : : new( ) ;
594
+ assert ! ( d. mut_rev_iter( ) . next( ) . is_none( ) ) ;
595
+
596
+ for uint:: range( 0 , 3 ) |i| {
597
+ d. add_front( i) ;
598
+ }
599
+
600
+ for d. mut_rev_iter( ) . enumerate( ) . advance |( i, elt) | {
601
+ assert_eq ! ( * elt, i) ;
602
+ * elt = i;
603
+ }
604
+
605
+ {
606
+ let mut it = d. mut_rev_iter( ) ;
607
+ assert_eq ! ( * it. next( ) . unwrap( ) , 0 ) ;
608
+ assert_eq ! ( * it. next( ) . unwrap( ) , 1 ) ;
609
+ assert_eq ! ( * it. next( ) . unwrap( ) , 2 ) ;
610
+ assert ! ( it. next( ) . is_none( ) ) ;
611
+ }
612
+ }
613
+
564
614
#[ test]
565
615
fn test_from_iterator( ) {
566
616
use std:: iterator;
0 commit comments