summaryrefslogtreecommitdiff
path: root/exercises/move_semantics/move_semantics2.rs
diff options
context:
space:
mode:
authorliv <mokou@fastmail.com>2023-09-04 14:32:01 +0200
committerGitHub <noreply@github.com>2023-09-04 14:32:01 +0200
commitabc3013096f20a41009086c0f5ccb1b2b13abf12 (patch)
tree0733e49cf4950bb8e4f70eb423765e0dcc48f113 /exercises/move_semantics/move_semantics2.rs
parent6eb9bde786eb855b4f8e1db13e3f62b98a5ad65d (diff)
parent51e237d5f97610294798710ef8ba5349c2fd50c7 (diff)
Merge pull request #1660 from rust-lang/fix/move-semantics-tests
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
}