Skip to content

Commit 0c63a4a

Browse files
committed
Add tests for MoveItems
1 parent f14cb96 commit 0c63a4a

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

src/libcollections/vec.rs

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2565,6 +2565,39 @@ mod tests {
25652565
assert_eq!(v.map_in_place(|_| ZeroSized).as_slice(), [ZeroSized, ZeroSized].as_slice());
25662566
}
25672567

2568+
#[test]
2569+
fn test_move_items() {
2570+
let mut vec = vec!(1i, 2, 3);
2571+
let mut vec2 : Vec<int> = vec!();
2572+
for i in vec.move_iter() {
2573+
vec2.push(i);
2574+
}
2575+
assert!(vec2 == vec!(1i, 2, 3));
2576+
assert!(vec.empty());
2577+
}
2578+
2579+
#[test]
2580+
fn test_move_items_reverse() {
2581+
let mut vec = vec!(1i, 2, 3);
2582+
let mut vec2 : Vec<int> = vec!();
2583+
for i in vec.move_iter().rev() {
2584+
vec2.push(i);
2585+
}
2586+
assert!(vec2 == vec!(3i, 2, 1));
2587+
assert!(vec.empty());
2588+
}
2589+
2590+
#[test]
2591+
fn test_move_items_zero_sized() {
2592+
let mut vec = vec!((), (), ());
2593+
let mut vec2 : Vec<()> = vec!();
2594+
for i in vec.move_iter() {
2595+
vec2.push(i);
2596+
}
2597+
assert!(vec2 == vec!((), (), ()));
2598+
assert!(vec.empty());
2599+
}
2600+
25682601
#[bench]
25692602
fn bench_new(b: &mut Bencher) {
25702603
b.iter(|| {

0 commit comments

Comments
 (0)