Quellcode durchsuchen

[ZF-8030] Zend_Locale:

- fixed notice while translation on false region
- fixed some unittests


git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@18530 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas vor 16 Jahren
Ursprung
Commit
2d9f83d407
2 geänderte Dateien mit 13 neuen und 5 gelöschten Zeilen
  1. 3 3
      library/Zend/Locale.php
  2. 10 2
      tests/Zend/LocaleTest.php

+ 3 - 3
library/Zend/Locale.php

@@ -528,7 +528,7 @@ class Zend_Locale
     public static function getTranslationList($path = null, $locale = null, $value = null)
     {
         require_once 'Zend/Locale/Data.php';
-        $locale = self::_prepareLocale($locale);
+        $locale = self::findLocale($locale);
         $result = Zend_Locale_Data::getList($locale, $path, $value);
         if (empty($result) === true) {
             return false;
@@ -602,7 +602,7 @@ class Zend_Locale
     public static function getTranslation($value = null, $path = null, $locale = null)
     {
         require_once 'Zend/Locale/Data.php';
-        $locale = self::_prepareLocale($locale);
+        $locale = self::findLocale($locale);
         $result = Zend_Locale_Data::getContent($locale, $path, $value);
         if (empty($result) === true) {
             return false;
@@ -677,7 +677,7 @@ class Zend_Locale
     public static function getQuestion($locale = null)
     {
         require_once 'Zend/Locale/Data.php';
-        $locale            = self::_prepareLocale($locale);
+        $locale            = self::findLocale($locale);
         $quest             = Zend_Locale_Data::getList($locale, 'question');
         $yes               = explode(':', $quest['yes']);
         $no                = explode(':', $quest['no']);

+ 10 - 2
tests/Zend/LocaleTest.php

@@ -536,7 +536,7 @@ class Zend_LocaleTest extends PHPUnit_Framework_TestCase
 
         $char = Zend_LocaleTestHelper::getTranslationList('characters', 'de_DE');
         $this->assertEquals("[a ä b-o ö p-s ß t u ü v-z]", $char['characters']);
-        $this->assertEquals("[á à ă â å ä ā æ ç é è ĕ ê ë ē í ì ĭ î ï ī ñ ó ò ŏ ô ö ø ō œ ß ú ù ŭ û ü ū ÿ]", $char['auxiliary']);
+        $this->assertEquals("[á à ă â å ā æ ç é è ĕ ê ë ē í ì ĭ î ï ī ñ ó ò ŏ ô ø ō œ ú ù ŭ û ū ÿ]", $char['auxiliary']);
         $this->assertEquals("[a-z]", $char['currencySymbol']);
 
         $char = Zend_LocaleTestHelper::getTranslationList('characters', 'en');
@@ -581,7 +581,7 @@ class Zend_LocaleTest extends PHPUnit_Framework_TestCase
         try {
             $this->assertTrue(is_array(Zend_LocaleTestHelper::getQuestion('environment')));
         } catch (Zend_Locale_Exception $e) {
-            $this->assertContains('Autodetection', $e->getMessage());
+            $this->assertContains('ocale', $e->getMessage());
         }
     }
 
@@ -819,6 +819,14 @@ class Zend_LocaleTest extends PHPUnit_Framework_TestCase
     }
 
     /**
+     * @ZF-8030
+     */
+    public function testFailedLocaleOnPreTranslations()
+    {
+        $this->assertEquals('Andorra', Zend_LocaleTestHelper::getTranslation('AD', 'country', 'gl_GL'));
+    }
+
+    /**
      * Ignores a raised PHP error when in effect, but throws a flag to indicate an error occurred
      *
      * @param  integer $errno