summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rustlings-macros/info.toml4
-rw-r--r--solutions/03_if/if1.rs33
2 files changed, 34 insertions, 3 deletions
diff --git a/rustlings-macros/info.toml b/rustlings-macros/info.toml
index 495e9c3..a67e38d 100644
--- a/rustlings-macros/info.toml
+++ b/rustlings-macros/info.toml
@@ -200,9 +200,9 @@ Some similar examples from other languages:
- In Python this would be: `a if a > b else b`
Remember in Rust that:
-- the `if` condition does not need to be surrounded by parentheses
+- The `if` condition does not need to be surrounded by parentheses
- `if`/`else` conditionals are expressions
-- Each condition is followed by a `{}` block."""
+- Each condition is followed by a `{}` block"""
[[exercises]]
name = "if2"
diff --git a/solutions/03_if/if1.rs b/solutions/03_if/if1.rs
index 4e18198..079c671 100644
--- a/solutions/03_if/if1.rs
+++ b/solutions/03_if/if1.rs
@@ -1 +1,32 @@
-// Solutions will be available before the stable release. Thank you for testing the beta version 🥰
+fn bigger(a: i32, b: i32) -> i32 {
+ if a > b {
+ a
+ } else {
+ b
+ }
+}
+
+fn main() {
+ // You can optionally experiment here.
+}
+
+// Don't mind this for now :)
+#[cfg(test)]
+mod tests {
+ use super::*;
+
+ #[test]
+ fn ten_is_bigger_than_eight() {
+ assert_eq!(10, bigger(10, 8));
+ }
+
+ #[test]
+ fn fortytwo_is_bigger_than_thirtytwo() {
+ assert_eq!(42, bigger(32, 42));
+ }
+
+ #[test]
+ fn equal_numbers() {
+ assert_eq!(42, bigger(42, 42));
+ }
+}