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'));
 }
Exemple #5
0
 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'));
 }