/**
  * Transliterate function
  *
  * This method processes a string and replaces all accented UTF-8 characters by unaccented
  * ASCII-7 "equivalents".
  *
  * @param   string  $string  The string to transliterate.
  *
  * @return  string  The transliteration of the string.
  *
  * @since   1.0
  * @throws  \RuntimeException
  */
 public function transliterate($string)
 {
     if ($this->transliterator !== null) {
         return call_user_func($this->transliterator, $string);
     }
     $string = Transliterate::utf8_latin_to_ascii($string);
     $lowercaseString = String::strtolower($string);
     // String can return false if there isn't a fully valid UTF-8 string entered
     if ($lowercaseString == false) {
         throw new \RuntimeException('Invalid UTF-8 was detected in the string "%s"', $lowercaseString);
     }
     return $lowercaseString;
 }
 /**
  * Transliterate function
  *
  * This method processes a string and replaces all accented UTF-8 characters by unaccented
  * ASCII-7 "equivalents".
  *
  * @param   string  $string  The string to transliterate.
  *
  * @return  string  The transliteration of the string.
  *
  * @since   1.0
  */
 public function transliterate($string)
 {
     if ($this->transliterator !== null) {
         return call_user_func($this->transliterator, $string);
     }
     $string = Transliterate::utf8_latin_to_ascii($string);
     $string = String::strtolower($string);
     return $string;
 }
 /**
  * Test...
  *
  * @param   string  $word    @todo
  * @param   string  $result  @todo
  * @param   string  $case    @todo
  *
  * @covers Joomla\Language\Transliterate::utf8_latin_to_ascii
  * @dataProvider testData
  *
  * @return void
  */
 public function testUtf8_latin_to_ascii($word, $result, $case)
 {
     $this->assertEquals($result, $this->object->utf8_latin_to_ascii($word, $case));
 }