hafiddna-say-hello 0.1.2

A simple Rust project that says hello
Documentation
#[cfg(feature = "math")]
pub fn add(left: u64, right: u64) -> u64 {
    left + right
}

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn it_works() {
        let result = add(2, 2);
        assert_eq!(result, 4);
    }
}

#[cfg(feature = "hello")]
pub fn say_hello(name: &str) -> String {
    format!("Hello, {}!", name)
}

#[cfg(feature = "bye")]
pub fn say_goodbye(name: &str) -> String {
    format!("Goodbye, {}!", name)
}

#[cfg(feature = "hello")]
pub fn say_hello_to_everyone(names: &[&str]) -> Vec<String> {
    names.iter().map(|&name| say_hello(name)).collect()
}

#[cfg(feature = "bye")]
pub fn say_goodbye_to_everyone(names: &[&str]) -> Vec<String> {
    names.iter().map(|&name| say_goodbye(name)).collect()
}

#[cfg(test)]
mod greeting_tests {
    use super::*;

    #[test]
    fn test_say_hello() {
        let greeting = say_hello("Alice");
        assert_eq!(greeting, "Hello, Alice!");
    }

    #[test]
    fn test_say_goodbye() {
        let farewell = say_goodbye("Bob");
        assert_eq!(farewell, "Goodbye, Bob!");
    }

    #[test]
    fn test_say_hello_to_everyone() {
        let names = vec!["Alice", "Bob"];
        let greetings = say_hello_to_everyone(&names);
        assert_eq!(greetings, vec!["Hello, Alice!", "Hello, Bob!"]);
    }

    #[test]
    fn test_say_goodbye_to_everyone() {
        let names = vec!["Alice", "Bob"];
        let farewells = say_goodbye_to_everyone(&names);
        assert_eq!(farewells, vec!["Goodbye, Alice!", "Goodbye, Bob!"]);
    }
}