public function testLoadTranslationData() { $adapter = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/_files/testmsg_en.mo', 'en'); $this->assertEquals($adapter->translate('Message 1'), 'Message 1 (en)'); $this->assertEquals($adapter->translate('Message 5'), 'Message 5'); $this->assertEquals($adapter->translate('Message 2', 'ru'), 'Message 2'); $adapter->addTranslation('ru', dirname(__FILE__) . '/_files/testmsg_ru(koi8-r).mo'); $this->assertEquals($adapter->translate('Message 2', 'ru'), 'Сообщение 2 (ru)'); $this->assertEquals($adapter->translate('Message 5'), 'Message 5'); $this->assertEquals($adapter->translate('Message 5', 'ru'), 'Message 5'); }
public function testLoadTranslationData() { $adapter = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/_files/testmsg_en.mo', 'en'); $this->assertEquals($adapter->translate('Message 1'), 'Message 1 (en)'); $this->assertEquals($adapter->translate('Message 5'), 'Message 5'); $this->assertEquals($adapter->translate('Message 2', 'ru'), 'Message 2'); $adapter->addTranslation(dirname(__FILE__) . '/_files/testmsg_ru(koi8-r).mo', 'ru'); // unknown format KOI8-R, string has to be converted to UTF8 as this file is UTF8 and not KOI8-R // $this->assertEquals($adapter->translate('Message 2', 'ru'), 'óÏÏÂÝÅÎÉÅ 2 (ru)'); $this->assertEquals($adapter->translate('Message 5'), 'Message 5'); $this->assertEquals($adapter->translate('Message 5', 'ru'), 'Message 5'); }
/** * @group ZF-9489 */ public function testAddingAdapterToSourceUsingOwnRule() { $translate = new Zend_Translate(Zend_Translate::AN_ARRAY, array('singular' => array('plural_0 (en)', 'plural_1 (en)', 'plural_2 (en)', 'plural_3 (en)'), 'plural' => ''), 'en'); $this->assertFalse($translate->isTranslated('Message 1')); $adapter = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/Translate/Adapter/_files/translation_en.mo', 'en'); $translate->addTranslation($adapter); $this->assertTrue($adapter->isTranslated('Message 1')); $adapter2 = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/Translate/Adapter/_files/testmo/de_AT/LC_TEST/translation-de_DE.mo', 'de_AT'); $adapter2->addTranslation(dirname(__FILE__) . '/Translate/Adapter/_files/translation_en2.mo', 'fr'); $translate->addTranslation($adapter2, 'fr'); $languages = $translate->getList(); $this->assertFalse(array_key_exists('de_AT', $languages)); $this->assertTrue(array_key_exists('fr', $languages)); }
public function testList() { $adapter = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/_files/testmsg_en.mo', 'en'); $this->assertEquals($adapter->getList(), array('en' => 'en')); $adapter->addTranslation(dirname(__FILE__) . '/_files/testmsg_en.mo', 'de'); $this->assertEquals($adapter->getList(), array('en' => 'en', 'de' => 'de')); $this->assertTrue($adapter->isAvailable('de')); $locale = new Zend_Locale('en'); $this->assertTrue($adapter->isAvailable($locale)); $this->assertFalse($adapter->isAvailable('sr')); }
public function testOtherEncoding() { if (PHP_OS == 'AIX') { $this->markTestSkipped('These charsets are not supported on AIX'); } $adapter = new Zend_Translate_Adapter_Gettext(dirname(__FILE__) . '/_files/translation_otherencoding.mo', 'ru'); $adapter->addTranslation(dirname(__FILE__) . '/_files/translation_otherencoding.mo', 'ru'); // Original message is in KOI8-R.. as unit tests are done in UTF8 we have to convert // the returned KOI8-R string into UTF-8 $translation = iconv("KOI8-R", "UTF-8", $adapter->translate('Message 2', 'ru')); $this->assertEquals('Сообщение 2 (ru)', $translation); $this->assertEquals('Message 5', $adapter->translate('Message 5')); $this->assertEquals('Message 5', $adapter->translate('Message 5', 'ru_RU')); }