|
|
@@ -680,7 +680,7 @@ class Zend_TranslateTest extends PHPUnit_Framework_TestCase
|
|
|
/**
|
|
|
* @group ZF-9489
|
|
|
*/
|
|
|
- public function testAddingAdapterToSourcealsUsingOwnRule()
|
|
|
+ public function testAddingAdapterToSourceUsingOwnRule()
|
|
|
{
|
|
|
$translate = new Zend_Translate(
|
|
|
Zend_Translate::AN_ARRAY,
|
|
|
@@ -744,6 +744,73 @@ class Zend_TranslateTest extends PHPUnit_Framework_TestCase
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * @group ZF-2736
|
|
|
+ */
|
|
|
+ public function testReroutingForTranslations()
|
|
|
+ {
|
|
|
+ $translate = new Zend_Translate(
|
|
|
+ array(
|
|
|
+ 'adapter' => Zend_Translate::AN_ARRAY,
|
|
|
+ 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/testArray/',
|
|
|
+ 'locale' => 'auto',
|
|
|
+ 'scan' => Zend_Translate::LOCALE_FILENAME,
|
|
|
+ 'ignore' => array('.', 'ignoreme', 'LC_TEST'),
|
|
|
+ 'route' => array('ja' => 'de_AT'),
|
|
|
+ )
|
|
|
+ );
|
|
|
+
|
|
|
+ $translate2 = new Zend_Translate(
|
|
|
+ array(
|
|
|
+ 'adapter' => Zend_Translate::AN_CSV,
|
|
|
+ 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/translation_en.csv',
|
|
|
+ 'locale' => 'en_US',
|
|
|
+ )
|
|
|
+ );
|
|
|
+
|
|
|
+ $translate->addTranslation($translate2);
|
|
|
+
|
|
|
+ $langs = $translate->getList();
|
|
|
+ $this->assertFalse(array_key_exists('de_DE', $langs));
|
|
|
+ $this->assertTrue(array_key_exists('ja', $langs));
|
|
|
+ $this->assertTrue(array_key_exists('en_US', $langs));
|
|
|
+ $this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @group ZF-2736
|
|
|
+ */
|
|
|
+ public function testCircleReroutingForTranslations()
|
|
|
+ {
|
|
|
+ $translate = new Zend_Translate(
|
|
|
+ array(
|
|
|
+ 'adapter' => Zend_Translate::AN_ARRAY,
|
|
|
+ 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/testArray/',
|
|
|
+ 'locale' => 'auto',
|
|
|
+ 'scan' => Zend_Translate::LOCALE_FILENAME,
|
|
|
+ 'ignore' => array('.', 'ignoreme', 'LC_TEST'),
|
|
|
+ 'route' => array('ja' => 'de_AT', 'de_AT' => 'ja'),
|
|
|
+ )
|
|
|
+ );
|
|
|
+
|
|
|
+ $translate2 = new Zend_Translate(
|
|
|
+ array(
|
|
|
+ 'adapter' => Zend_Translate::AN_CSV,
|
|
|
+ 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/translation_en.csv',
|
|
|
+ 'locale' => 'en_US',
|
|
|
+ )
|
|
|
+ );
|
|
|
+
|
|
|
+ $translate->addTranslation($translate2);
|
|
|
+
|
|
|
+ $langs = $translate->getList();
|
|
|
+ $this->assertFalse(array_key_exists('de_DE', $langs));
|
|
|
+ $this->assertTrue(array_key_exists('ja', $langs));
|
|
|
+ $this->assertTrue(array_key_exists('en_US', $langs));
|
|
|
+ $this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
|
|
|
+ $this->assertEquals('Message 10', $translate->translate('Message 10', 'ja'));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* Ignores a raised PHP error when in effect, but throws a flag to indicate an error occurred
|
|
|
*
|
|
|
* @param integer $errno
|