Upgrade CakePHP from 2.2.5 to 2.9.5

This commit is contained in:
Brm Ko 2017-02-26 15:29:44 +01:00
parent 5a580df460
commit 235a541597
793 changed files with 60746 additions and 23753 deletions

View file

@ -2,21 +2,22 @@
/**
* I18nTest file
*
* PHP 5
*
* CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html>
* Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice
*
* @copyright Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests
* @package Cake.Test.Case.I18n
* @since CakePHP(tm) v 1.2.0.5432
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
App::uses('I18n', 'I18n');
App::uses('CakeSession', 'Model/Datasource');
/**
* I18nTest class
@ -74,15 +75,15 @@ class I18nTest extends CakeTestCase {
$this->assertEquals('Dom 1 Foo', I18n::translate('dom1.foo', false, 'dom1'));
$this->assertEquals('Dom 1 Bar', I18n::translate('dom1.bar', false, 'dom1'));
$domains = I18n::domains();
$this->assertEquals('Dom 1 Foo', $domains['dom1']['cache_test_po']['LC_MESSAGES']['dom1.foo']);
$this->assertEquals('Dom 1 Foo', $domains['dom1']['cache_test_po']['LC_MESSAGES']['dom1.foo']['']);
// reset internally stored entries
I18n::clear();
// now only dom1 should be in cache
$cachedDom1 = Cache::read('dom1_' . $lang, '_cake_core_');
$this->assertEquals('Dom 1 Foo', $cachedDom1['LC_MESSAGES']['dom1.foo']);
$this->assertEquals('Dom 1 Bar', $cachedDom1['LC_MESSAGES']['dom1.bar']);
$this->assertEquals('Dom 1 Foo', $cachedDom1['LC_MESSAGES']['dom1.foo']['']);
$this->assertEquals('Dom 1 Bar', $cachedDom1['LC_MESSAGES']['dom1.bar']['']);
// dom2 not in cache
$this->assertFalse(Cache::read('dom2_' . $lang, '_cake_core_'));
@ -91,11 +92,11 @@ class I18nTest extends CakeTestCase {
// verify dom2 was cached through manual read from cache
$cachedDom2 = Cache::read('dom2_' . $lang, '_cake_core_');
$this->assertEquals('Dom 2 Foo', $cachedDom2['LC_MESSAGES']['dom2.foo']);
$this->assertEquals('Dom 2 Bar', $cachedDom2['LC_MESSAGES']['dom2.bar']);
$this->assertEquals('Dom 2 Foo', $cachedDom2['LC_MESSAGES']['dom2.foo']['']);
$this->assertEquals('Dom 2 Bar', $cachedDom2['LC_MESSAGES']['dom2.bar']['']);
// modify cache entry manually to verify that dom1 entries now will be read from cache
$cachedDom1['LC_MESSAGES']['dom1.foo'] = 'FOO';
$cachedDom1['LC_MESSAGES']['dom1.foo'][''] = 'FOO';
Cache::write('dom1_' . $lang, $cachedDom1, '_cake_core_');
$this->assertEquals('FOO', I18n::translate('dom1.foo', false, 'dom1'));
}
@ -106,10 +107,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function testDefaultStrings() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 1', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 = 0 or > 1', $plurals));
$this->assertTrue(in_array('1 = 1', $plurals));
$this->assertTrue(in_array('2 = 0 or > 1', $plurals));
@ -137,10 +138,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 = 0 or > 1', $plurals));
$this->assertTrue(in_array('25 = 0 or > 1', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 1 (from core)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 = 0 or > 1 (from core)', $corePlurals));
$this->assertTrue(in_array('1 = 1 (from core)', $corePlurals));
$this->assertTrue(in_array('2 = 0 or > 1 (from core)', $corePlurals));
@ -192,13 +193,13 @@ class I18nTest extends CakeTestCase {
/**
* Assertions for rules zero.
*
* @return
* @return void
*/
public function assertRulesZero() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 0 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 ends with any # (translated)', $plurals));
$this->assertTrue(in_array('1 ends with any # (translated)', $plurals));
$this->assertTrue(in_array('2 ends with any # (translated)', $plurals));
@ -226,10 +227,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 ends with any # (translated)', $plurals));
$this->assertTrue(in_array('25 ends with any # (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 0 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 ends with any # (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends with any # (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 ends with any # (from core translated)', $corePlurals));
@ -284,10 +285,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesOne() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 1 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 = 0 or > 1 (translated)', $plurals));
$this->assertTrue(in_array('1 = 1 (translated)', $plurals));
$this->assertTrue(in_array('2 = 0 or > 1 (translated)', $plurals));
@ -315,10 +316,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 = 0 or > 1 (translated)', $plurals));
$this->assertTrue(in_array('25 = 0 or > 1 (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 1 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 = 0 or > 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 = 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 = 0 or > 1 (from core translated)', $corePlurals));
@ -373,10 +374,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesTwo() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 2 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 = 0 or 1 (translated)', $plurals));
$this->assertTrue(in_array('1 = 0 or 1 (translated)', $plurals));
$this->assertTrue(in_array('2 > 1 (translated)', $plurals));
@ -404,10 +405,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 > 1 (translated)', $plurals));
$this->assertTrue(in_array('25 > 1 (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 2 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 = 0 or 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 = 0 or 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 > 1 (from core translated)', $corePlurals));
@ -462,10 +463,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesThree() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 3 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 = 0 (translated)', $plurals));
$this->assertTrue(in_array('1 ends 1 but not 11 (translated)', $plurals));
$this->assertTrue(in_array('2 everything else (translated)', $plurals));
@ -493,10 +494,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 3 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 = 0 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends 1 but not 11 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 everything else (from core translated)', $corePlurals));
@ -551,10 +552,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesFour() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 4 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 = 1 (translated)', $plurals));
$this->assertTrue(in_array('2 = 2 (translated)', $plurals));
@ -582,10 +583,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 4 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 = 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 = 2 (from core translated)', $corePlurals));
@ -640,10 +641,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesFive() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 5 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 = 0 or ends in 01-19 (translated)', $plurals));
$this->assertTrue(in_array('0 = 0 or ends in 01-19 (translated)', $plurals));
$this->assertTrue(in_array('1 = 1 (translated)', $plurals));
@ -672,10 +673,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 5 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 = 0 or ends in 01-19 (from core translated)', $corePlurals));
$this->assertTrue(in_array('0 = 0 or ends in 01-19 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 = 1 (from core translated)', $corePlurals));
@ -731,10 +732,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesSix() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 6 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 ends in 0 or ends in 10-20 (translated)', $plurals));
$this->assertTrue(in_array('1 ends in 1, not 11 (translated)', $plurals));
$this->assertTrue(in_array('2 everything else (translated)', $plurals));
@ -762,10 +763,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 6 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 ends in 0 or ends in 10-20 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends in 1, not 11 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 everything else (from core translated)', $corePlurals));
@ -820,10 +821,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesSeven() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 7 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 ends in 1, not 11 (translated)', $plurals));
$this->assertTrue(in_array('2 ends in 2-4, not 12-14 (translated)', $plurals));
@ -851,10 +852,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 ends in 2-4, not 12-14 (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 7 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends in 1, not 11 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 ends in 2-4, not 12-14 (from core translated)', $corePlurals));
@ -909,10 +910,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesEight() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 8 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
$this->assertTrue(in_array('2 is 2-4 (translated)', $plurals));
@ -940,10 +941,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 8 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 is 2-4 (from core translated)', $corePlurals));
@ -998,10 +999,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesNine() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 9 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
@ -1030,10 +1031,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 ends in 2-4, not 12-14 (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 9 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
@ -1090,10 +1091,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesTen() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 10 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 ends in 1 (translated)', $plurals));
@ -1122,10 +1123,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 10 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends in 1 (from core translated)', $corePlurals));
@ -1181,10 +1182,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesEleven() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 11 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
$this->assertTrue(in_array('2 is 2 (translated)', $plurals));
@ -1212,10 +1213,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 11 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 is 2 (from core translated)', $corePlurals));
@ -1270,10 +1271,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesTwelve() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 12 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 is 0 or 3-10 (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
$this->assertTrue(in_array('2 is 2 (translated)', $plurals));
@ -1301,10 +1302,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 12 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 is 0 or 3-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 is 2 (from core translated)', $corePlurals));
@ -1359,10 +1360,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesThirteen() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 13 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 is 0 or ends in 01-10 (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
$this->assertTrue(in_array('2 is 0 or ends in 01-10 (translated)', $plurals));
@ -1390,10 +1391,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 13 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 is 0 or ends in 01-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 is 0 or ends in 01-10 (from core translated)', $corePlurals));
@ -1448,10 +1449,10 @@ class I18nTest extends CakeTestCase {
* @return void
*/
public function assertRulesFourteen() {
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Plural Rule 14 (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (translated)', $plurals));
$this->assertTrue(in_array('1 ends in 1 (translated)', $plurals));
$this->assertTrue(in_array('2 ends in 2 (translated)', $plurals));
@ -1479,10 +1480,10 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('24 everything else (translated)', $plurals));
$this->assertTrue(in_array('25 everything else (translated)', $plurals));
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 14 (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertTrue(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 ends in 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 ends in 2 (from core translated)', $corePlurals));
@ -1511,17 +1512,138 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('25 everything else (from core translated)', $corePlurals));
}
/**
* testMoRulesFifteen method
*
* @return void
*/
public function testMoRulesFifteen() {
Configure::write('Config.language', 'rule_15_mo');
$this->assertRulesFifteen();
}
/**
* testPoRulesFifteen method
*
* @return void
*/
public function testPoRulesFifteen() {
Configure::write('Config.language', 'rule_15_po');
$this->assertRulesFifteen();
}
/**
* Assertions for plural rules fifteen
*
* @return void
*/
public function assertRulesFifteen() {
$singular = $this->_singular();
$this->assertEquals('Plural Rule 15 (translated)', $singular);
$plurals = $this->_plural(111);
$this->assertTrue(in_array('0 is 0 (translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (translated)', $plurals));
$this->assertTrue(in_array('2 is 2 (translated)', $plurals));
$this->assertTrue(in_array('3 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('4 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('5 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('6 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('7 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('8 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('9 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('10 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('11 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('12 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('13 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('14 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('15 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('16 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('17 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('18 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('19 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('20 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('31 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('42 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('53 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('64 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('75 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('86 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('97 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('98 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('99 ends with 11-99 (translated)', $plurals));
$this->assertTrue(in_array('100 everything else (translated)', $plurals));
$this->assertTrue(in_array('101 everything else (translated)', $plurals));
$this->assertTrue(in_array('102 everything else (translated)', $plurals));
$this->assertTrue(in_array('103 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('104 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('105 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('106 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('107 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('108 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('109 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('110 ends with 03-10 (translated)', $plurals));
$this->assertTrue(in_array('111 ends with 11-99 (translated)', $plurals));
$coreSingular = $this->_singularFromCore();
$this->assertEquals('Plural Rule 15 (from core translated)', $coreSingular);
$corePlurals = $this->_pluralFromCore(111);
$this->assertTrue(in_array('0 is 0 (from core translated)', $corePlurals));
$this->assertTrue(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertTrue(in_array('2 is 2 (from core translated)', $corePlurals));
$this->assertTrue(in_array('3 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('4 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('5 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('6 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('7 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('8 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('9 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('10 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('11 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('12 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('13 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('14 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('15 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('16 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('17 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('18 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('19 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('20 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('31 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('42 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('53 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('64 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('75 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('86 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('97 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('98 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('99 ends with 11-99 (from core translated)', $corePlurals));
$this->assertTrue(in_array('100 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('101 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('102 everything else (from core translated)', $corePlurals));
$this->assertTrue(in_array('103 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('104 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('105 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('106 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('107 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('108 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('109 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('110 ends with 03-10 (from core translated)', $corePlurals));
$this->assertTrue(in_array('111 ends with 11-99 (from core translated)', $corePlurals));
}
/**
* testSetLanguageWithSession method
*
* @return void
*/
public function testSetLanguageWithSession() {
$_SESSION['Config']['language'] = 'po';
$singular = $this->__singular();
CakeSession::write('Config.language', 'po');
$singular = $this->_singular();
$this->assertEquals('Po (translated)', $singular);
$plurals = $this->__plural();
$plurals = $this->_plural();
$this->assertTrue(in_array('0 everything else (po translated)', $plurals));
$this->assertTrue(in_array('1 is 1 (po translated)', $plurals));
$this->assertTrue(in_array('2 is 2-4 (po translated)', $plurals));
@ -1548,7 +1670,7 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('23 everything else (po translated)', $plurals));
$this->assertTrue(in_array('24 everything else (po translated)', $plurals));
$this->assertTrue(in_array('25 everything else (po translated)', $plurals));
unset($_SESSION['Config']['language']);
CakeSession::delete('Config.language');
}
/**
@ -1558,13 +1680,13 @@ class I18nTest extends CakeTestCase {
*/
public function testNoCoreTranslation() {
Configure::write('Config.language', 'po');
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Po (translated)', $singular);
$coreSingular = $this->__singularFromCore();
$coreSingular = $this->_singularFromCore();
$this->assertNotEquals('Po (from core translated)', $coreSingular);
$corePlurals = $this->__pluralFromCore();
$corePlurals = $this->_pluralFromCore();
$this->assertFalse(in_array('0 everything else (from core translated)', $corePlurals));
$this->assertFalse(in_array('1 is 1 (from core translated)', $corePlurals));
$this->assertFalse(in_array('2 is 2-4 (from core translated)', $corePlurals));
@ -1604,10 +1726,10 @@ class I18nTest extends CakeTestCase {
));
Configure::write('Config.language', 'po');
$singular = $this->__domainSingular();
$singular = $this->_domainSingular();
$this->assertEquals('Plural Rule 1 (from plugin)', $singular);
$plurals = $this->__domainPlural();
$plurals = $this->_domainPlural();
$this->assertTrue(in_array('0 = 0 or > 1 (from plugin)', $plurals));
$this->assertTrue(in_array('1 = 1 (from plugin)', $plurals));
$this->assertTrue(in_array('2 = 0 or > 1 (from plugin)', $plurals));
@ -1636,6 +1758,30 @@ class I18nTest extends CakeTestCase {
$this->assertTrue(in_array('25 = 0 or > 1 (from plugin)', $plurals));
}
/**
* Test that Configure::read('I18n.preferApp') will prefer app.
*
* @return void
*/
public function testPluginTranslationPreferApp() {
// Reset internally stored entries
I18n::clear();
Cache::clear(false, '_cake_core_');
Configure::write('I18n.preferApp', true);
App::build(array(
'Plugin' => array(CAKE . 'Test' . DS . 'test_app' . DS . 'Plugin' . DS)
));
Configure::write('Config.language', 'po');
$singular = $this->_domainSingular();
$this->assertEquals('Plural Rule 1', $singular);
$plurals = $this->_domainPlural();
$this->assertTrue(in_array('0 = 0 or > 1', $plurals));
}
/**
* testPoMultipleLineTranslation method
*
@ -1759,7 +1905,11 @@ class I18nTest extends CakeTestCase {
*/
public function testCategory() {
Configure::write('Config.language', 'po');
$category = $this->__category();
// Test with default (I18n constant) category.
$category = $this->_category();
$this->assertEquals('Monetary Po (translated)', $category);
// Test with category number represenation.
$category = $this->_category(3);
$this->assertEquals('Monetary Po (translated)', $category);
}
@ -1771,10 +1921,10 @@ class I18nTest extends CakeTestCase {
public function testPluginCategory() {
Configure::write('Config.language', 'po');
$singular = $this->__domainCategorySingular();
$singular = $this->_domainCategorySingular();
$this->assertEquals('Monetary Plural Rule 1 (from plugin)', $singular);
$plurals = $this->__domainCategoryPlural();
$plurals = $this->_domainCategoryPlural();
$this->assertTrue(in_array('Monetary 0 = 0 or > 1 (from plugin)', $plurals));
$this->assertTrue(in_array('Monetary 1 = 1 (from plugin)', $plurals));
}
@ -1786,10 +1936,10 @@ class I18nTest extends CakeTestCase {
*/
public function testCategoryThenSingular() {
Configure::write('Config.language', 'po');
$category = $this->__category();
$category = $this->_category();
$this->assertEquals('Monetary Po (translated)', $category);
$singular = $this->__singular();
$singular = $this->_singular();
$this->assertEquals('Po (translated)', $singular);
}
@ -1843,21 +1993,78 @@ class I18nTest extends CakeTestCase {
public function testTranslateLanguageParam() {
Configure::write('Config.language', 'rule_0_po');
$result = I18n::translate('Plural Rule 1', null, null, 6);
$result = I18n::translate('Plural Rule 1', null, null, I18n::LC_MESSAGES);
$expected = 'Plural Rule 0 (translated)';
$this->assertEquals($expected, $result);
$result = I18n::translate('Plural Rule 1', null, null, 6, null, 'rule_1_po');
$result = I18n::translate('Plural Rule 1', null, null, I18n::LC_MESSAGES, null, 'rule_1_po');
$expected = 'Plural Rule 1 (translated)';
$this->assertEquals($expected, $result);
}
/**
* Test that the '' domain causes exceptions.
*
* @expectedException CakeException
* @return void
*/
public function testTranslateEmptyDomain() {
I18n::translate('Plural Rule 1', null, '');
}
/**
* testLoadLocaleDefinition method
*
* @return void
*/
public function testLoadLocaleDefinition() {
$path = current(App::path('locales'));
$result = I18n::loadLocaleDefinition($path . 'nld' . DS . 'LC_TIME');
$expected = array('zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag');
$this->assertSame($expected, $result['day']);
}
/**
* Test basic context support
*
* @return void
*/
public function testContext() {
Configure::write('Config.language', 'nld');
$this->assertSame("brief", __x('mail', 'letter'));
$this->assertSame("letter", __x('character', 'letter'));
$this->assertSame("bal", __x('spherical object', 'ball'));
$this->assertSame("danspartij", __x('social gathering', 'ball'));
$this->assertSame("balans", __('balance'));
$this->assertSame("saldo", __x('money', 'balance'));
}
/**
* Test basic context support using mo files.
*
* @return void
*/
public function testContextMoFile() {
Configure::write('Config.language', 'nld_mo');
$this->assertSame("brief", __x('mail', 'letter'));
$this->assertSame("letter", __x('character', 'letter'));
$this->assertSame("bal", __x('spherical object', 'ball'));
$this->assertSame("danspartij", __x('social gathering', 'ball'));
$this->assertSame("balans", __('balance'));
$this->assertSame("saldo", __x('money', 'balance'));
// MO file is sorted by msgid, 'zoo' should be last
$this->assertSame("dierentuin", __('zoo'));
}
/**
* Singular method
*
* @return void
*/
private function __domainCategorySingular($domain = 'test_plugin', $category = 3) {
protected function _domainCategorySingular($domain = 'test_plugin', $category = 3) {
$singular = __dc($domain, 'Plural Rule 1', $category);
return $singular;
}
@ -1867,7 +2074,7 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __domainCategoryPlural($domain = 'test_plugin', $category = 3) {
protected function _domainCategoryPlural($domain = 'test_plugin', $category = 3) {
$plurals = array();
for ($number = 0; $number <= 25; $number++) {
$plurals[] = sprintf(__dcn($domain, '%d = 1', '%d = 0 or > 1', (float)$number, $category), (float)$number);
@ -1880,7 +2087,7 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __domainSingular($domain = 'test_plugin') {
protected function _domainSingular($domain = 'test_plugin') {
$singular = __d($domain, 'Plural Rule 1');
return $singular;
}
@ -1890,10 +2097,10 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __domainPlural($domain = 'test_plugin') {
protected function _domainPlural($domain = 'test_plugin') {
$plurals = array();
for ($number = 0; $number <= 25; $number++) {
$plurals[] = sprintf(__dn($domain, '%d = 1', '%d = 0 or > 1', (float)$number), (float)$number );
$plurals[] = sprintf(__dn($domain, '%d = 1', '%d = 0 or > 1', (float)$number), (float)$number);
}
return $plurals;
}
@ -1903,7 +2110,7 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __category($category = 3) {
protected function _category($category = I18n::LC_MONETARY) {
$singular = __c('Plural Rule 1', $category);
return $singular;
}
@ -1913,7 +2120,7 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __singular() {
protected function _singular() {
$singular = __('Plural Rule 1');
return $singular;
}
@ -1921,11 +2128,12 @@ class I18nTest extends CakeTestCase {
/**
* Plural method
*
* @param int $upTo For numbers upto (default to 25)
* @return void
*/
private function __plural() {
protected function _plural($upTo = 25) {
$plurals = array();
for ($number = 0; $number <= 25; $number++) {
for ($number = 0; $number <= $upTo; $number++) {
$plurals[] = sprintf(__n('%d = 1', '%d = 0 or > 1', (float)$number), (float)$number);
}
return $plurals;
@ -1936,7 +2144,7 @@ class I18nTest extends CakeTestCase {
*
* @return void
*/
private function __singularFromCore() {
protected function _singularFromCore() {
$singular = __('Plural Rule 1 (from core)');
return $singular;
}
@ -1944,12 +2152,13 @@ class I18nTest extends CakeTestCase {
/**
* pluralFromCore method
*
* @param int $upTo For numbers upto (default to 25)
* @return void
*/
private function __pluralFromCore() {
protected function _pluralFromCore($upTo = 25) {
$plurals = array();
for ($number = 0; $number <= 25; $number++) {
$plurals[] = sprintf(__n('%d = 1 (from core)', '%d = 0 or > 1 (from core)', (float)$number), (float)$number );
for ($number = 0; $number <= $upTo; $number++) {
$plurals[] = sprintf(__n('%d = 1 (from core)', '%d = 0 or > 1 (from core)', (float)$number), (float)$number);
}
return $plurals;
}

View file

@ -2,20 +2,20 @@
/**
* L10nTest file
*
* PHP 5
*
* CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html>
* Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice
*
* @copyright Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests
* @package Cake.Test.Case.I18n
* @since CakePHP(tm) v 1.2.0.5432
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
App::uses('L10n', 'I18n');
/**
@ -25,6 +25,16 @@ App::uses('L10n', 'I18n');
*/
class L10nTest extends CakeTestCase {
/**
* setUp method
*
* @return void
*/
public function setUp() {
parent::setUp();
Configure::delete('Config.language');
}
/**
* testGet method
*
@ -38,14 +48,14 @@ class L10nTest extends CakeTestCase {
$this->assertEquals('en', $lang);
$this->assertEquals('English', $localize->language);
$this->assertEquals(array('eng', 'eng'), $localize->languagePath);
$this->assertEquals(array('eng'), $localize->languagePath);
$this->assertEquals('eng', $localize->locale);
// Map Entry
$localize->get('eng');
$this->assertEquals('English', $localize->language);
$this->assertEquals(array('eng', 'eng'), $localize->languagePath);
$this->assertEquals(array('eng'), $localize->languagePath);
$this->assertEquals('eng', $localize->locale);
// Catalog Entry
@ -56,8 +66,7 @@ class L10nTest extends CakeTestCase {
$this->assertEquals('en_ca', $localize->locale);
// Default Entry
define('DEFAULT_LANGUAGE', 'en-us');
$localize->default = 'en-us';
$lang = $localize->get('use_default');
$this->assertEquals('en-us', $lang);
@ -68,14 +77,6 @@ class L10nTest extends CakeTestCase {
$localize->get('es');
$localize->get('');
$this->assertEquals('en-us', $localize->lang);
// Using $this->default
$localize = new L10n();
$localize->get('use_default');
$this->assertEquals('English (United States)', $localize->language);
$this->assertEquals(array('en_us', 'eng', 'eng'), $localize->languagePath);
$this->assertEquals('en_us', $localize->locale);
}
/**
@ -92,7 +93,7 @@ class L10nTest extends CakeTestCase {
$this->assertEquals('en-ca', $lang);
$this->assertEquals('English (Canadian)', $localize->language);
$this->assertEquals(array('en_ca', 'eng', 'eng'), $localize->languagePath);
$this->assertEquals(array('en_ca', 'eng'), $localize->languagePath);
$this->assertEquals('en_ca', $localize->locale);
$_SERVER['HTTP_ACCEPT_LANGUAGE'] = 'es_mx';
@ -100,19 +101,52 @@ class L10nTest extends CakeTestCase {
$this->assertEquals('es-mx', $lang);
$this->assertEquals('Spanish (Mexican)', $localize->language);
$this->assertEquals(array('es_mx', 'spa', 'eng'), $localize->languagePath);
$this->assertEquals(array('es_mx', 'spa'), $localize->languagePath);
$this->assertEquals('es_mx', $localize->locale);
$localize = new L10n();
$localize->default = 'en-us';
$lang = $localize->get();
$this->assertEquals(array('es_mx', 'spa', 'eng'), $localize->languagePath);
$_SERVER['HTTP_ACCEPT_LANGUAGE'] = 'en_xy,en_ca';
$localize->get();
$this->assertEquals('English', $localize->language);
$this->assertEquals(array('eng', 'eng', 'eng'), $localize->languagePath);
$this->assertEquals(array('eng'), $localize->languagePath);
$this->assertEquals('eng', $localize->locale);
$_SERVER = $serverBackup;
}
/**
* testGet method with deprecated constant DEFAULT_LANGUAGE
*
* @return void
*/
public function testGetWithDeprecatedConstant() {
$this->skipIf(defined('DEFAULT_LANGUAGE'), 'Cannot re-define already defined constant.');
define('DEFAULT_LANGUAGE', 'en-us');
$localize = new L10n();
$lang = $localize->get('use_default');
$this->assertEquals('en-us', $lang);
$this->assertEquals('English (United States)', $localize->language);
$this->assertEquals(array('en_us', 'eng'), $localize->languagePath);
$this->assertEquals('en_us', $localize->locale);
$localize = new L10n();
$lang = $localize->get();
$this->assertEquals('en-us', $lang);
$this->assertEquals('English (United States)', $localize->language);
$this->assertEquals(array('en_us', 'eng'), $localize->languagePath);
$this->assertEquals('en_us', $localize->locale);
}
/**
* testMap method
*
@ -125,8 +159,12 @@ class L10nTest extends CakeTestCase {
$expected = array('afr' => 'af', 'af' => 'afr');
$this->assertEquals($expected, $result);
$result = $localize->map(array('sqi', 'sq'));
$expected = array('sqi' => 'sq', 'sq' => 'sqi');
$this->assertEquals($expected, $result);
$result = $localize->map(array('alb', 'sq'));
$expected = array('alb' => 'sq', 'sq' => 'alb');
$expected = array('alb' => 'sq', 'sq' => 'sqi');
$this->assertEquals($expected, $result);
$result = $localize->map(array('ara', 'ar'));
@ -137,12 +175,12 @@ class L10nTest extends CakeTestCase {
$expected = array('hye' => 'hy', 'hy' => 'hye');
$this->assertEquals($expected, $result);
$result = $localize->map(array('baq', 'eu'));
$expected = array('baq' => 'eu', 'eu' => 'baq');
$result = $localize->map(array('eus', 'eu'));
$expected = array('eus' => 'eu', 'eu' => 'eus');
$this->assertEquals($expected, $result);
$result = $localize->map(array('baq', 'eu'));
$expected = array('baq' => 'eu', 'eu' => 'baq');
$expected = array('baq' => 'eu', 'eu' => 'eus');
$this->assertEquals($expected, $result);
$result = $localize->map(array('bos', 'bs'));
@ -162,11 +200,11 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('chi', 'zh'));
$expected = array('chi' => 'zh', 'zh' => 'chi');
$expected = array('chi' => 'zh', 'zh' => 'zho');
$this->assertEquals($expected, $result);
$result = $localize->map(array('zho', 'zh'));
$expected = array('zho' => 'zh', 'zh' => 'chi');
$expected = array('zho' => 'zh', 'zh' => 'zho');
$this->assertEquals($expected, $result);
$result = $localize->map(array('hrv', 'hr'));
@ -174,11 +212,11 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('ces', 'cs'));
$expected = array('ces' => 'cs', 'cs' => 'cze');
$expected = array('ces' => 'cs', 'cs' => 'ces');
$this->assertEquals($expected, $result);
$result = $localize->map(array('cze', 'cs'));
$expected = array('cze' => 'cs', 'cs' => 'cze');
$expected = array('cze' => 'cs', 'cs' => 'ces');
$this->assertEquals($expected, $result);
$result = $localize->map(array('dan', 'da'));
@ -186,17 +224,21 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('dut', 'nl'));
$expected = array('dut' => 'nl', 'nl' => 'dut');
$expected = array('dut' => 'nl', 'nl' => 'nld');
$this->assertEquals($expected, $result);
$result = $localize->map(array('nld', 'nl'));
$expected = array('nld' => 'nl', 'nl' => 'dut');
$expected = array('nld' => 'nl', 'nl' => 'nld');
$this->assertEquals($expected, $result);
$result = $localize->map(array('nld'));
$expected = array('nld' => 'nl');
$this->assertEquals($expected, $result);
$result = $localize->map(array('dut'));
$expected = array('dut' => 'nl');
$this->assertEquals($expected, $result);
$result = $localize->map(array('eng', 'en'));
$expected = array('eng' => 'en', 'en' => 'eng');
$this->assertEquals($expected, $result);
@ -222,11 +264,11 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('fra', 'fr'));
$expected = array('fra' => 'fr', 'fr' => 'fre');
$expected = array('fra' => 'fr', 'fr' => 'fra');
$this->assertEquals($expected, $result);
$result = $localize->map(array('fre', 'fr'));
$expected = array('fre' => 'fr', 'fr' => 'fre');
$expected = array('fre' => 'fr', 'fr' => 'fra');
$this->assertEquals($expected, $result);
$result = $localize->map(array('gla', 'gd'));
@ -266,11 +308,11 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('ice', 'is'));
$expected = array('ice' => 'is', 'is' => 'ice');
$expected = array('ice' => 'is', 'is' => 'isl');
$this->assertEquals($expected, $result);
$result = $localize->map(array('isl', 'is'));
$expected = array('isl' => 'is', 'is' => 'ice');
$expected = array('isl' => 'is', 'is' => 'isl');
$this->assertEquals($expected, $result);
$result = $localize->map(array('ind', 'id'));
@ -289,6 +331,10 @@ class L10nTest extends CakeTestCase {
$expected = array('jpn' => 'ja', 'ja' => 'jpn');
$this->assertEquals($expected, $result);
$result = $localize->map(array('kaz', 'kk'));
$expected = array('kaz' => 'kk', 'kk' => 'kaz');
$this->assertEquals($expected, $result);
$result = $localize->map(array('kor', 'ko'));
$expected = array('kor' => 'ko', 'ko' => 'kor');
$this->assertEquals($expected, $result);
@ -302,19 +348,19 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('mac', 'mk'));
$expected = array('mac' => 'mk', 'mk' => 'mac');
$expected = array('mac' => 'mk', 'mk' => 'mkd');
$this->assertEquals($expected, $result);
$result = $localize->map(array('mkd', 'mk'));
$expected = array('mkd' => 'mk', 'mk' => 'mac');
$expected = array('mkd' => 'mk', 'mk' => 'mkd');
$this->assertEquals($expected, $result);
$result = $localize->map(array('may', 'ms'));
$expected = array('may' => 'ms', 'ms' => 'may');
$expected = array('may' => 'ms', 'ms' => 'msa');
$this->assertEquals($expected, $result);
$result = $localize->map(array('msa', 'ms'));
$expected = array('msa' => 'ms', 'ms' => 'may');
$expected = array('msa' => 'ms', 'ms' => 'msa');
$this->assertEquals($expected, $result);
$result = $localize->map(array('mlt', 'mt'));
@ -346,35 +392,31 @@ class L10nTest extends CakeTestCase {
$this->assertEquals($expected, $result);
$result = $localize->map(array('ron', 'ro'));
$expected = array('ron' => 'ro', 'ro' => 'rum');
$expected = array('ron' => 'ro', 'ro' => 'ron');
$this->assertEquals($expected, $result);
$result = $localize->map(array('rum', 'ro'));
$expected = array('rum' => 'ro', 'ro' => 'rum');
$expected = array('rum' => 'ro', 'ro' => 'ron');
$this->assertEquals($expected, $result);
$result = $localize->map(array('rus', 'ru'));
$expected = array('rus' => 'ru', 'ru' => 'rus');
$this->assertEquals($expected, $result);
$result = $localize->map(array('smi', 'sz'));
$expected = array('smi' => 'sz', 'sz' => 'smi');
$this->assertEquals($expected, $result);
$result = $localize->map(array('scc', 'sr'));
$expected = array('scc' => 'sr', 'sr' => 'scc');
$result = $localize->map(array('sme', 'se'));
$expected = array('sme' => 'se', 'se' => 'sme');
$this->assertEquals($expected, $result);
$result = $localize->map(array('srp', 'sr'));
$expected = array('srp' => 'sr', 'sr' => 'scc');
$expected = array('srp' => 'sr', 'sr' => 'srp');
$this->assertEquals($expected, $result);
$result = $localize->map(array('slk', 'sk'));
$expected = array('slk' => 'sk', 'sk' => 'slo');
$expected = array('slk' => 'sk', 'sk' => 'slk');
$this->assertEquals($expected, $result);
$result = $localize->map(array('slo', 'sk'));
$expected = array('slo' => 'sk', 'sk' => 'slo');
$expected = array('slo' => 'sk', 'sk' => 'slk');
$this->assertEquals($expected, $result);
$result = $localize->map(array('slv', 'sl'));
@ -505,7 +547,7 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('cs'));
$expected = array(
'cs' => array('language' => 'Czech', 'locale' => 'cze', 'localeFallback' => 'cze', 'charset' => 'utf-8', 'direction' => 'ltr')
'cs' => array('language' => 'Czech', 'locale' => 'ces', 'localeFallback' => 'ces', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -526,10 +568,9 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('e', 'el'));
$result = $localize->catalog(array('el'));
$expected = array(
'e' => array('language' => 'Greek', 'locale' => 'gre', 'localeFallback' => 'gre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'el' => array('language' => 'Greek', 'locale' => 'gre', 'localeFallback' => 'gre', 'charset' => 'utf-8', 'direction' => 'ltr')
'el' => array('language' => 'Greek', 'locale' => 'ell', 'localeFallback' => 'ell', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -583,13 +624,13 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('eu'));
$expected = array(
'eu' => array('language' => 'Basque', 'locale' => 'baq', 'localeFallback' => 'baq', 'charset' => 'utf-8', 'direction' => 'ltr')
'eu' => array('language' => 'Basque', 'locale' => 'eus', 'localeFallback' => 'eus', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('fa'));
$expected = array(
'fa' => array('language' => 'Farsi', 'locale' => 'per', 'localeFallback' => 'per', 'charset' => 'utf-8', 'direction' => 'rtl')
'fa' => array('language' => 'Farsi', 'locale' => 'fas', 'localeFallback' => 'fas', 'charset' => 'utf-8', 'direction' => 'rtl')
);
$this->assertEquals($expected, $result);
@ -607,12 +648,12 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('fr', 'fr-be', 'fr-ca', 'fr-ch', 'fr-fr', 'fr-lu'));
$expected = array(
'fr' => array('language' => 'French (Standard)', 'locale' => 'fre', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-be' => array('language' => 'French (Belgium)', 'locale' => 'fr_be', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-ca' => array('language' => 'French (Canadian)', 'locale' => 'fr_ca', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-ch' => array('language' => 'French (Swiss)', 'locale' => 'fr_ch', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-fr' => array('language' => 'French (France)', 'locale' => 'fr_fr', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-lu' => array('language' => 'French (Luxembourg)', 'locale' => 'fr_lu', 'localeFallback' => 'fre', 'charset' => 'utf-8', 'direction' => 'ltr')
'fr' => array('language' => 'French (Standard)', 'locale' => 'fra', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-be' => array('language' => 'French (Belgium)', 'locale' => 'fr_be', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-ca' => array('language' => 'French (Canadian)', 'locale' => 'fr_ca', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-ch' => array('language' => 'French (Swiss)', 'locale' => 'fr_ch', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-fr' => array('language' => 'French (France)', 'locale' => 'fr_fr', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr'),
'fr-lu' => array('language' => 'French (Luxembourg)', 'locale' => 'fr_lu', 'localeFallback' => 'fra', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -665,16 +706,15 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('id', 'in'));
$result = $localize->catalog(array('id'));
$expected = array(
'id' => array('language' => 'Indonesian', 'locale' => 'ind', 'localeFallback' => 'ind', 'charset' => 'utf-8', 'direction' => 'ltr'),
'in' => array('language' => 'Indonesian', 'locale' => 'ind', 'localeFallback' => 'ind', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('is'));
$expected = array(
'is' => array('language' => 'Icelandic', 'locale' => 'ice', 'localeFallback' => 'ice', 'charset' => 'utf-8', 'direction' => 'ltr')
'is' => array('language' => 'Icelandic', 'locale' => 'isl', 'localeFallback' => 'isl', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -691,6 +731,12 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('kk'));
$expected = array(
'kk' => array('language' => 'Kazakh', 'locale' => 'kaz', 'localeFallback' => 'kaz', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('ko', 'ko-kp', 'ko-kr'));
$expected = array(
'ko' => array('language' => 'Korean', 'locale' => 'kor', 'localeFallback' => 'kor', 'charset' => 'kr', 'direction' => 'ltr'),
@ -721,14 +767,14 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('mk', 'mk-mk'));
$expected = array(
'mk' => array('language' => 'FYRO Macedonian', 'locale' => 'mk', 'localeFallback' => 'mac', 'charset' => 'utf-8', 'direction' => 'ltr'),
'mk-mk' => array('language' => 'Macedonian', 'locale' => 'mk_mk', 'localeFallback' => 'mac', 'charset' => 'utf-8', 'direction' => 'ltr')
'mk' => array('language' => 'FYRO Macedonian', 'locale' => 'mkd', 'localeFallback' => 'mkd', 'charset' => 'utf-8', 'direction' => 'ltr'),
'mk-mk' => array('language' => 'Macedonian', 'locale' => 'mk_mk', 'localeFallback' => 'mkd', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('ms'));
$expected = array(
'ms' => array('language' => 'Malaysian', 'locale' => 'may', 'localeFallback' => 'may', 'charset' => 'utf-8', 'direction' => 'ltr')
'ms' => array('language' => 'Malaysian', 'locale' => 'msa', 'localeFallback' => 'msa', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -738,24 +784,23 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('n', 'nl', 'nl-be'));
$result = $localize->catalog(array('nl', 'nl-be'));
$expected = array(
'n' => array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr'),
'nl' => array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr'),
'nl-be' => array('language' => 'Dutch (Belgium)', 'locale' => 'nl_be', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr')
'nl' => array('language' => 'Dutch (Standard)', 'locale' => 'nld', 'localeFallback' => 'nld', 'charset' => 'utf-8', 'direction' => 'ltr'),
'nl-be' => array('language' => 'Dutch (Belgium)', 'locale' => 'nl_be', 'localeFallback' => 'nld', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog('nl');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'nld', 'localeFallback' => 'nld', 'charset' => 'utf-8', 'direction' => 'ltr');
$this->assertEquals($expected, $result);
$result = $localize->catalog('nld');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'nld', 'localeFallback' => 'nld', 'charset' => 'utf-8', 'direction' => 'ltr');
$this->assertEquals($expected, $result);
$result = $localize->catalog('dut');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'dut', 'localeFallback' => 'dut', 'charset' => 'utf-8', 'direction' => 'ltr');
$expected = array('language' => 'Dutch (Standard)', 'locale' => 'nld', 'localeFallback' => 'nld', 'charset' => 'utf-8', 'direction' => 'ltr');
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('nb'));
@ -771,9 +816,8 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('p', 'pl'));
$result = $localize->catalog(array('pl'));
$expected = array(
'p' => array('language' => 'Polish', 'locale' => 'pol', 'localeFallback' => 'pol', 'charset' => 'utf-8', 'direction' => 'ltr'),
'pl' => array('language' => 'Polish', 'locale' => 'pol', 'localeFallback' => 'pol', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -793,8 +837,8 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('ro', 'ro-mo'));
$expected = array(
'ro' => array('language' => 'Romanian', 'locale' => 'rum', 'localeFallback' => 'rum', 'charset' => 'utf-8', 'direction' => 'ltr'),
'ro-mo' => array('language' => 'Romanian (Moldavia)', 'locale' => 'ro_mo', 'localeFallback' => 'rum', 'charset' => 'utf-8', 'direction' => 'ltr')
'ro' => array('language' => 'Romanian', 'locale' => 'ron', 'localeFallback' => 'ron', 'charset' => 'utf-8', 'direction' => 'ltr'),
'ro-mo' => array('language' => 'Romanian (Moldavia)', 'locale' => 'ro_mo', 'localeFallback' => 'ron', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -806,7 +850,7 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('sk'));
$expected = array(
'sk' => array('language' => 'Slovak', 'locale' => 'slo', 'localeFallback' => 'slo', 'charset' => 'utf-8', 'direction' => 'ltr')
'sk' => array('language' => 'Slovak', 'locale' => 'slk', 'localeFallback' => 'slk', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -818,13 +862,13 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('sq'));
$expected = array(
'sq' => array('language' => 'Albanian', 'locale' => 'alb', 'localeFallback' => 'alb', 'charset' => 'utf-8', 'direction' => 'ltr')
'sq' => array('language' => 'Albanian', 'locale' => 'sqi', 'localeFallback' => 'sqi', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('sr'));
$expected = array(
'sr' => array('language' => 'Serbian', 'locale' => 'scc', 'localeFallback' => 'scc', 'charset' => 'utf-8', 'direction' => 'ltr')
'sr' => array('language' => 'Serbian', 'locale' => 'srp', 'localeFallback' => 'srp', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -835,15 +879,9 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('sx'));
$result = $localize->catalog(array('se'));
$expected = array(
'sx' => array('language' => 'Sutu', 'locale' => 'sx', 'localeFallback' => 'sx', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('sz'));
$expected = array(
'sz' => array('language' => 'Sami (Lappish)', 'locale' => 'smi', 'localeFallback' => 'smi', 'charset' => 'utf-8', 'direction' => 'ltr')
'se' => array('language' => 'Sami', 'locale' => 'sme', 'localeFallback' => 'sme', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -916,11 +954,11 @@ class L10nTest extends CakeTestCase {
$result = $localize->catalog(array('zh', 'zh-cn', 'zh-hk', 'zh-sg', 'zh-tw'));
$expected = array(
'zh' => array('language' => 'Chinese', 'locale' => 'chi', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-cn' => array('language' => 'Chinese (PRC)', 'locale' => 'zh_cn', 'localeFallback' => 'chi', 'charset' => 'GB2312', 'direction' => 'ltr'),
'zh-hk' => array('language' => 'Chinese (Hong Kong)', 'locale' => 'zh_hk', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-sg' => array('language' => 'Chinese (Singapore)', 'locale' => 'zh_sg', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-tw' => array('language' => 'Chinese (Taiwan)', 'locale' => 'zh_tw', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr')
'zh' => array('language' => 'Chinese', 'locale' => 'zho', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-cn' => array('language' => 'Chinese (PRC)', 'locale' => 'zh_cn', 'localeFallback' => 'zho', 'charset' => 'GB2312', 'direction' => 'ltr'),
'zh-hk' => array('language' => 'Chinese (Hong Kong)', 'locale' => 'zh_hk', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-sg' => array('language' => 'Chinese (Singapore)', 'locale' => 'zh_sg', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-tw' => array('language' => 'Chinese (Taiwan)', 'locale' => 'zh_tw', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -930,13 +968,12 @@ class L10nTest extends CakeTestCase {
);
$this->assertEquals($expected, $result);
$result = $localize->catalog(array('en-nz', 'es-do', 'sz', 'ar-lb', 'zh-hk', 'pt-br'));
$result = $localize->catalog(array('en-nz', 'es-do', 'ar-lb', 'zh-hk', 'pt-br'));
$expected = array(
'en-nz' => array('language' => 'English (New Zealand)', 'locale' => 'en_nz', 'localeFallback' => 'eng', 'charset' => 'utf-8', 'direction' => 'ltr'),
'es-do' => array('language' => 'Spanish (Dominican Republic)', 'locale' => 'es_do', 'localeFallback' => 'spa', 'charset' => 'utf-8', 'direction' => 'ltr'),
'sz' => array('language' => 'Sami (Lappish)', 'locale' => 'smi', 'localeFallback' => 'smi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'ar-lb' => array('language' => 'Arabic (Lebanon)', 'locale' => 'ar_lb', 'localeFallback' => 'ara', 'charset' => 'utf-8', 'direction' => 'rtl'),
'zh-hk' => array('language' => 'Chinese (Hong Kong)', 'locale' => 'zh_hk', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zh-hk' => array('language' => 'Chinese (Hong Kong)', 'locale' => 'zh_hk', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr'),
'pt-br' => array('language' => 'Portuguese (Brazil)', 'locale' => 'pt_br', 'localeFallback' => 'por', 'charset' => 'utf-8', 'direction' => 'ltr')
);
$this->assertEquals($expected, $result);
@ -945,8 +982,8 @@ class L10nTest extends CakeTestCase {
$expected = array(
'eng' => array('language' => 'English', 'locale' => 'eng', 'localeFallback' => 'eng', 'charset' => 'utf-8', 'direction' => 'ltr'),
'deu' => array('language' => 'German (Standard)', 'locale' => 'deu', 'localeFallback' => 'deu', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zho' => array('language' => 'Chinese', 'locale' => 'chi', 'localeFallback' => 'chi', 'charset' => 'utf-8', 'direction' => 'ltr'),
'rum' => array('language' => 'Romanian', 'locale' => 'rum', 'localeFallback' => 'rum', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zho' => array('language' => 'Chinese', 'locale' => 'zho', 'localeFallback' => 'zho', 'charset' => 'utf-8', 'direction' => 'ltr'),
'rum' => array('language' => 'Romanian', 'locale' => 'ron', 'localeFallback' => 'ron', 'charset' => 'utf-8', 'direction' => 'ltr'),
'zul' => array('language' => 'Zulu', 'locale' => 'zul', 'localeFallback' => 'zul', 'charset' => 'utf-8', 'direction' => 'ltr'),
'yid' => array('language' => 'Yiddish', 'locale' => 'yid', 'localeFallback' => 'yid', 'charset' => 'utf-8', 'direction' => 'ltr')
);

View file

@ -2,20 +2,20 @@
/**
* MultibyteTest file
*
* PHP 5
*
* CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html>
* Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice
*
* @copyright Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests
* @package Cake.Test.Case.I18n
* @since CakePHP(tm) v 1.2.0.6833
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
App::uses('Multibyte', 'I18n');
/**
@ -260,9 +260,9 @@ class MultibyteTest extends CakeTestCase {
7716, 7718, 7720, 7722, 7724, 7726, 7728, 7730, 7732, 7734, 7736, 7738, 7740, 7742, 7744, 7746, 7748, 7750,
7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766, 7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, 7784, 7786,
7788, 7790, 7792, 7794, 7796, 7798, 7800, 7802, 7804, 7806, 7808, 7810, 7812, 7814, 7816, 7818, 7820, 7822,
7824, 7826, 7828, 7830, 7831, 7832, 7833, 7834, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856,
7824, 7826, 7828, 7830, 7831, 7832, 7833, 7834, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856,
7858, 7860, 7862, 7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878, 7880, 7882, 7884, 7886, 7888, 7890, 7892,
7894, 7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, 7928);
7894, 7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, 7928);
$this->assertEquals($expected, $result);
$string = 'ḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕẖẗẘẙẚạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹ';
@ -579,9 +579,9 @@ class MultibyteTest extends CakeTestCase {
7716, 7718, 7720, 7722, 7724, 7726, 7728, 7730, 7732, 7734, 7736, 7738, 7740, 7742, 7744, 7746, 7748, 7750,
7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766, 7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, 7784, 7786,
7788, 7790, 7792, 7794, 7796, 7798, 7800, 7802, 7804, 7806, 7808, 7810, 7812, 7814, 7816, 7818, 7820, 7822,
7824, 7826, 7828, 7830, 7831, 7832, 7833, 7834, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856,
7824, 7826, 7828, 7830, 7831, 7832, 7833, 7834, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856,
7858, 7860, 7862, 7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878, 7880, 7882, 7884, 7886, 7888, 7890, 7892,
7894, 7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, 7928);
7894, 7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, 7928);
$result = Multibyte::ascii($input);
$expected = 'ḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẖẗẘẙẚẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸ';
$this->assertEquals($expected, $result);