public function testSplitHeader() { $translations = Gettext\Extractors\Po::fromFile(__DIR__ . '/files/gettext_multiple_headers.po'); $pluralHeader = "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"; $this->assertEquals($pluralHeader, $translations->getHeader('Plural-Forms'), 'header split over 2 lines not extracted correctly'); return $translations; }
public function testDynamicHeaders() { $translations = Gettext\Extractors\Po::fromFile(__DIR__ . '/files/gettext_multiple_headers.po'); $jsonString = Gettext\Generators\Jed::toString($translations, __DIR__ . '/files/gettext_multiple_headers.json', true); $domain = 'testingdomain'; $jedJson = json_decode($jsonString, true); $this->assertTrue(!empty($jedJson[$domain]) && $jedJson[$domain]['']['domain'] === $domain, "Domain '{$domain}' either missing or invalid"); $language = 'bs'; $this->assertEquals($language, $jedJson[$domain]['']['lang'], 'language does not match expected'); }