summaryrefslogtreecommitdiff
path: root/exercises/move_semantics/move_semantics2.rs
diff options
context:
space:
mode:
authorliv <shadows_withal@fastmail.com>2023-09-04 14:20:37 +0200
committerliv <shadows_withal@fastmail.com>2023-09-04 14:29:06 +0200
commit51e237d5f97610294798710ef8ba5349c2fd50c7 (patch)
tree772e18cfc19a37675b17eaf9d4e5bb07b9a3e104 /exercises/move_semantics/move_semantics2.rs
parentc177507db39286a3a22b2c2337e66f2b68cb8318 (diff)
fix: refactor move semantics 1-4 into tests
Diffstat (limited to 'exercises/move_semantics/move_semantics2.rs')
-rw-r--r--exercises/move_semantics/move_semantics2.rs18
1 files changed, 6 insertions, 12 deletions
diff --git a/exercises/move_semantics/move_semantics2.rs b/exercises/move_semantics/move_semantics2.rs
index 72d37fa..baf6bcc 100644
--- a/exercises/move_semantics/move_semantics2.rs
+++ b/exercises/move_semantics/move_semantics2.rs
@@ -1,32 +1,26 @@
// move_semantics2.rs
//
-// Expected output:
-// vec0 has length 3, with contents `[22, 44, 66]`
-// vec1 has length 4, with contents `[22, 44, 66, 88]`
+// Make the test pass by finding a way to keep both Vecs separate!
//
// Execute `rustlings hint move_semantics2` or use the `hint` watch subcommand
// for a hint.
// I AM NOT DONE
+#[test]
fn main() {
- let vec0 = Vec::new();
+ let vec0 = vec![22, 44, 66];
let mut vec1 = fill_vec(vec0);
- println!("{} has length {}, with contents: `{:?}`", "vec0", vec0.len(), vec0);
-
- vec1.push(88);
-
- println!("{} has length {}, with contents `{:?}`", "vec1", vec1.len(), vec1);
+ assert_eq!(vec0, vec![22, 44, 66]);
+ assert_eq!(vec1, vec![22, 44, 66, 88]);
}
fn fill_vec(vec: Vec<i32>) -> Vec<i32> {
let mut vec = vec;
- vec.push(22);
- vec.push(44);
- vec.push(66);
+ vec.push(88);
vec
}