commit 9348808ea9516e114bdd11df307283fb85fc209f
parent 71d9c799b6c289a8299a089aafdd16d048851553
Author: Daniel Barlow <dan@telent.net>
Date: Tue, 31 Oct 2023 23:14:54 +0000
don't hardcode return value in forward()
Diffstat:
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/main.rs b/src/main.rs
@@ -9,7 +9,10 @@ mod rover {
type Rover = (i32, i32, Facing);
pub fn forward(r : Rover) -> Rover {
- (1 as i32, 0 as i32, Facing::N)
+ match r {
+ (lon, lat, direction) =>
+ (lon as i32, lat - 1 as i32, direction)
+ }
}
}
@@ -18,10 +21,13 @@ mod tests {
use super::*;
#[test]
- fn rover_run() {
- assert_eq!(1,1);
+ fn move_north() {
let r = (1 as i32, 1 as i32, rover::Facing::N);
assert_eq!(rover::forward(r),
(1 as i32, 0 as i32, rover::Facing::N));
+
+ let r = (1 as i32, 3 as i32, rover::Facing::N);
+ assert_eq!(rover::forward(r),
+ (1 as i32, 2 as i32, rover::Facing::N));
}
}