diff --git a/exercises/nth-prime/example.rs b/exercises/nth-prime/example.rs index 8745ec38d..a81be7d16 100644 --- a/exercises/nth-prime/example.rs +++ b/exercises/nth-prime/example.rs @@ -9,10 +9,10 @@ fn is_prime(n: u32) -> bool { return true; } -pub fn nth(n: u32) -> Result { +pub fn nth(n: u32) -> Option { match n { - 0 => Err(()), - 1 => Ok(2), + 0 => None, + 1 => Some(2), _ => { let mut count: u32 = 1; let mut candidate: u32 = 1; @@ -22,7 +22,7 @@ pub fn nth(n: u32) -> Result { count += 1; } } - Ok(candidate) + Some(candidate) } } } diff --git a/exercises/nth-prime/src/lib.rs b/exercises/nth-prime/src/lib.rs index e69de29bb..b0d871bfe 100644 --- a/exercises/nth-prime/src/lib.rs +++ b/exercises/nth-prime/src/lib.rs @@ -0,0 +1,3 @@ +pub fn nth(n: u32) -> Option { + unimplemented!("What is the {}th prime number?", n) +} diff --git a/exercises/nth-prime/tests/nth-prime.rs b/exercises/nth-prime/tests/nth-prime.rs index ee2760087..2315fa445 100644 --- a/exercises/nth-prime/tests/nth-prime.rs +++ b/exercises/nth-prime/tests/nth-prime.rs @@ -2,29 +2,29 @@ extern crate nth_prime as np; #[test] fn test_first_prime() { - assert_eq!(np::nth(1), Ok(2)); + assert_eq!(np::nth(1), Some(2)); } #[test] #[ignore] fn test_second_prime() { - assert_eq!(np::nth(2), Ok(3)); + assert_eq!(np::nth(2), Some(3)); } #[test] #[ignore] fn test_sixth_prime() { - assert_eq!(np::nth(6), Ok(13)); + assert_eq!(np::nth(6), Some(13)); } #[test] #[ignore] fn test_big_prime() { - assert_eq!(np::nth(10001), Ok(104743)); + assert_eq!(np::nth(10001), Some(104743)); } #[test] #[ignore] fn test_zeroth_prime() { - assert!(np::nth(0).is_err()); + assert_eq!(np::nth(0), None); }