diff options
| author | Remo Senekowitsch <remo@buenzli.dev> | 2024-09-14 09:48:26 +0200 |
|---|---|---|
| committer | Remo Senekowitsch <remo@buenzli.dev> | 2024-09-14 10:03:52 +0200 |
| commit | b540c6df253c1f528486bf4245da8eec66710684 (patch) | |
| tree | c02d85fd202636f0dd1d72d2e7aaf6816b11659c /exercises | |
| parent | 47f8a0cbe502654ec09a6865cc82fe9330580ce1 (diff) | |
Make if2 less confusing
Some people would get stuck on this exercise, trying to understand the meaning
behind foo, fuzz, baz etc. Making the theme of the code make a little more sense
to humans should hopefully prevent people from getting confused by abstract and
non-sensical tests.
Diffstat (limited to 'exercises')
| -rw-r--r-- | exercises/03_if/if2.rs | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/exercises/03_if/if2.rs b/exercises/03_if/if2.rs index 593a77a..10037f2 100644 --- a/exercises/03_if/if2.rs +++ b/exercises/03_if/if2.rs @@ -1,7 +1,7 @@ // TODO: Fix the compiler error on this function. -fn foo_if_fizz(fizzish: &str) -> &str { - if fizzish == "fizz" { - "foo" +fn picky_eater(food: &str) -> &str { + if food == "strawberry" { + "Yummy!" } else { 1 } @@ -18,18 +18,20 @@ mod tests { use super::*; #[test] - fn foo_for_fizz() { - // This means that calling `foo_if_fizz` with the argument "fizz" should return "foo". - assert_eq!(foo_if_fizz("fizz"), "foo"); + fn yummy_food() { + // This means that calling `picky_eater` with the argument "food" should return "Yummy!". + assert_eq!(picky_eater("strawberry"), "Yummy!"); } #[test] - fn bar_for_fuzz() { - assert_eq!(foo_if_fizz("fuzz"), "bar"); + fn neutral_food() { + assert_eq!(picky_eater("potato"), "I guess I can eat that."); } #[test] - fn default_to_baz() { - assert_eq!(foo_if_fizz("literally anything"), "baz"); + fn default_disliked_food() { + assert_eq!(picky_eater("broccoli"), "No thanks!"); + assert_eq!(picky_eater("gummy bears"), "No thanks!"); + assert_eq!(picky_eater("literally anything"), "No thanks!"); } } |
