//! Tests for reverse-string //! //! Generated by [script][script] using [canonical data][canonical-data] //! //! [script]: https://github.com/exercism/rust/blob/b829ce2/bin/init_exercise.py //! [canonical-data]: https://raw.githubusercontent.com/exercism/problem-specifications/main/exercises/reverse-string/canonical_data.json use reverse_string::*; /// Process a single test case for the property `reverse` fn process_reverse_case(input: &str, expected: &str) { assert_eq!(&reverse(input), expected) } #[test] /// empty string fn test_an_empty_string() { process_reverse_case("", ""); } #[test] /// a word fn test_a_word() { process_reverse_case("robot", "tobor"); } #[test] /// a capitalized word fn test_a_capitalized_word() { process_reverse_case("Ramen", "nemaR"); } #[test] /// a sentence with punctuation fn test_a_sentence_with_punctuation() { process_reverse_case("I'm hungry!", "!yrgnuh m'I"); } #[test] /// a palindrome fn test_a_palindrome() { process_reverse_case("racecar", "racecar"); } #[test] /// an even-sized word fn test_an_even_sized_word() { process_reverse_case("drawer", "reward"); } #[test] /// wide characters fn test_wide_characters() { process_reverse_case("子猫", "猫子"); } #[test] #[cfg(feature = "grapheme")] /// grapheme clusters fn test_grapheme_clusters() { process_reverse_case("uüu", "uüu"); }