summaryrefslogtreecommitdiff
path: root/exercises/06_move_semantics/move_semantics2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/06_move_semantics/move_semantics2.rs')
-rw-r--r--exercises/06_move_semantics/move_semantics2.rs34
1 files changed, 19 insertions, 15 deletions
diff --git a/exercises/06_move_semantics/move_semantics2.rs b/exercises/06_move_semantics/move_semantics2.rs
index 3457d11..d087911 100644
--- a/exercises/06_move_semantics/move_semantics2.rs
+++ b/exercises/06_move_semantics/move_semantics2.rs
@@ -1,19 +1,4 @@
-// move_semantics2.rs
-//
// 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.
-
-#[test]
-fn main() {
- let vec0 = vec![22, 44, 66];
-
- let vec1 = fill_vec(vec0);
-
- 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;
@@ -22,3 +7,22 @@ fn fill_vec(vec: Vec<i32>) -> Vec<i32> {
vec
}
+
+fn main() {
+ // You can optionally experiment here.
+}
+
+#[cfg(test)]
+mod tests {
+ use super::*;
+
+ #[test]
+ fn move_semantics2() {
+ let vec0 = vec![22, 44, 66];
+
+ let vec1 = fill_vec(vec0);
+
+ assert_eq!(vec0, vec![22, 44, 66]);
+ assert_eq!(vec1, vec![22, 44, 66, 88]);
+ }
+}