Просмотр исходного кода

[GENERIC] Zend_Translate:

- fixed unittests
- fixed rerouting for multiple languages

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@22293 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas 15 лет назад
Родитель
Сommit
aa5ffcebe4
2 измененных файлов с 8 добавлено и 8 удалено
  1. 4 3
      library/Zend/Translate/Adapter.php
  2. 4 5
      tests/Zend/TranslateTest.php

+ 4 - 3
library/Zend/Translate/Adapter.php

@@ -558,13 +558,14 @@ abstract class Zend_Translate_Adapter {
 
         if (($options['content'] instanceof Zend_Translate) || ($options['content'] instanceof Zend_Translate_Adapter)) {
             $options['usetranslateadapter'] = true;
-            if (!empty($options['locale'])) {
+            if (!empty($options['locale']) && ($options['locale'] !== 'auto')) {
                 $options['content'] = $options['content']->getMessages($options['locale']);
             } else {
-                $locales = $options['content']->getList();
+                $content = $options['content'];
+                $locales = $content->getList();
                 foreach ($locales as $locale) {
                     $options['locale']  = $locale;
-                    $options['content'] = $options['content']->getMessages($locale);
+                    $options['content'] = $content->getMessages($locale);
                     $this->_addTranslationData($options);
                 }
 

+ 4 - 5
tests/Zend/TranslateTest.php

@@ -754,8 +754,8 @@ class Zend_TranslateTest extends PHPUnit_Framework_TestCase
                 'content' => dirname(__FILE__) . '/Translate/Adapter/_files/testarray/',
                 'locale'  => 'auto',
                 'scan'    => Zend_Translate::LOCALE_FILENAME,
-                'ignore'  => array('.', 'ignoreme', 'LC_TEST'),
-                'route'   => array('ja' => 'de_AT'),
+                'ignore'  => array('.', 'ignoreme', 'LC_OTHER'),
+                'route'   => array('ja' => 'en_US'),
             )
         );
 
@@ -768,9 +768,8 @@ class Zend_TranslateTest extends PHPUnit_Framework_TestCase
         );
 
         $translate->addTranslation($translate2);
-
         $langs = $translate->getList();
-        $this->assertFalse(array_key_exists('de_DE', $langs));
+        $this->assertFalse(array_key_exists('de_AT', $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'));
@@ -788,7 +787,7 @@ class Zend_TranslateTest extends PHPUnit_Framework_TestCase
                 'locale'  => 'auto',
                 'scan'    => Zend_Translate::LOCALE_FILENAME,
                 'ignore'  => array('.', 'ignoreme', 'LC_TEST'),
-                'route'   => array('ja' => 'de_AT', 'de_AT' => 'ja'),
+                'route'   => array('ja' => 'en_US', 'en_US' => 'ja'),
             )
         );