You are here

public function ParserTest::testNonUtf8Exception in Translation template extractor 7.2

Same name and namespace in other branches
  1. 6.3 vendor/Symfony/Component/Yaml/Tests/ParserTest.php \Symfony\Component\Yaml\Tests\ParserTest::testNonUtf8Exception()
  2. 7.3 vendor/Symfony/Component/Yaml/Tests/ParserTest.php \Symfony\Component\Yaml\Tests\ParserTest::testNonUtf8Exception()

File

vendor/Symfony/Component/Yaml/Tests/ParserTest.php, line 447

Class

ParserTest

Namespace

Symfony\Component\Yaml\Tests

Code

public function testNonUtf8Exception() {
  if (!function_exists('mb_detect_encoding') || !function_exists('iconv')) {
    $this
      ->markTestSkipped('Exceptions for non-utf8 charsets require the mb_detect_encoding() and iconv() functions.');
    return;
  }
  $yamls = array(
    iconv("UTF-8", "ISO-8859-1", "foo: 'äöüß'"),
    iconv("UTF-8", "ISO-8859-15", "euro: '€'"),
    iconv("UTF-8", "CP1252", "cp1252: '©ÉÇáñ'"),
  );
  foreach ($yamls as $yaml) {
    try {
      $this->parser
        ->parse($yaml);
      $this
        ->fail('charsets other than UTF-8 are rejected.');
    } catch (\Exception $e) {
      $this
        ->assertInstanceOf('Symfony\\Component\\Yaml\\Exception\\ParseException', $e, 'charsets other than UTF-8 are rejected.');
    }
  }
}