Code shared from the Rust Playground
// https://dev.to/thepracticaldev/daily-challenge-29-xs-and-os-12mj | |
pub fn xo (value: &str) -> bool { | |
let value = value.to_lowercase(); | |
let count_x = value.matches("x").count(); | |
let count_o = value.matches("o").count(); | |
count_x == count_o | |
} | |
#[cfg(test)] | |
mod tests { | |
use super::*; | |
#[test] | |
fn test_1() { | |
assert_eq!(xo("ooxx"), true); | |
} | |
#[test] | |
fn test_2() { | |
assert_eq!(xo("xooxx"), false); | |
} | |
#[test] | |
fn test_3() { | |
assert_eq!(xo("ooxXm"), true); | |
} | |
#[test] | |
fn test_4() { | |
assert_eq!(xo("zzoo"), false); | |
} | |
#[test] | |
fn test_5() { | |
assert_eq!(xo("zpzpzpp"), true); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment