summaryrefslogtreecommitdiff
path: root/rustlings/solutions/13_error_handling/errors1.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rustlings/solutions/13_error_handling/errors1.rs')
-rw-r--r--rustlings/solutions/13_error_handling/errors1.rs37
1 files changed, 0 insertions, 37 deletions
diff --git a/rustlings/solutions/13_error_handling/errors1.rs b/rustlings/solutions/13_error_handling/errors1.rs
deleted file mode 100644
index f552ca7..0000000
--- a/rustlings/solutions/13_error_handling/errors1.rs
+++ /dev/null
@@ -1,37 +0,0 @@
-fn generate_nametag_text(name: String) -> Result<String, String> {
- // ^^^^^^ ^^^^^^
- if name.is_empty() {
- // `Err(String)` instead of `None`.
- Err("Empty names aren't allowed".to_string())
- } else {
- // `Ok` instead of `Some`.
- Ok(format!("Hi! My name is {name}"))
- }
-}
-
-fn main() {
- // You can optionally experiment here.
-}
-
-#[cfg(test)]
-mod tests {
- use super::*;
-
- #[test]
- fn generates_nametag_text_for_a_nonempty_name() {
- assert_eq!(
- generate_nametag_text("Beyoncé".to_string()).as_deref(),
- Ok("Hi! My name is Beyoncé"),
- );
- }
-
- #[test]
- fn explains_why_generating_nametag_text_fails() {
- assert_eq!(
- generate_nametag_text(String::new())
- .as_ref()
- .map_err(|e| e.as_str()),
- Err("Empty names aren't allowed"),
- );
- }
-}