mars-rover-fe

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

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:
Msrc/main.rs | 12+++++++++---
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)); } }