1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
<?php
namespace Gettext\Languages\Test;
use Gettext\Languages\Language;
class GetTest extends TestCase
{
public function testGetAll()
{
$list = Language::getAll();
$count = count($list);
$this->assertGreaterThan(100, $count, 'The number of all languages is too small');
$this->assertLessThan(10000, $count, 'The number of all languages is too big');
}
public function testGetById()
{
$this->assertNull(Language::getById('root'), 'The root language is found!');
$language = Language::getById('it');
$this->assertNotNull($language, "The language 'it' has not been found");
$this->assertInstanceOf('Gettext\Languages\Language', $language);
$this->assertSame('Italian', $language->name);
$this->assertNull($language->territory);
$language = Language::getById('it-IT');
$this->assertNotNull($language, "The language 'it-IT' has not been found");
$this->assertSame('it_IT', $language->id);
$this->assertSame('Italian (Italy)', $language->name);
$this->assertSame('Italy', $language->territory);
$language = Language::getById('it_IT');
$this->assertNotNull($language, "The language 'it_IT' has not been found");
$this->assertSame('it_IT', $language->id);
$this->assertSame('Italian (Italy)', $language->name);
$language1 = Language::getById('nl_BE');
$this->assertNotNull($language1, "The language 'nl_BE' has not been found");
$language2 = Language::getById('nl');
$this->assertNotNull($language2, "The language 'nl' has not been found");
$this->assertSame($language1->baseLanguage, $language2->name);
$language = Language::getById('it');
$this->assertNull($language->script);
$language = Language::getById('it_Xxxxx');
$this->assertNull($language);
$language = Language::getById('it_Latn');
$this->assertNotNull($language);
$this->assertNotNull($language->script);
}
public function testPortuguese()
{
$pt = Language::getById('pt');
$this->assertSame('Portuguese', $pt->name);
$this->assertCount(3, $pt->categories);
$this->assertSame('one', $pt->categories[0]->id);
$ptPT = Language::getById('pt-PT');
$this->assertSame('European Portuguese', $ptPT->name);
$this->assertCount(3, $ptPT->categories);
$this->assertSame('one', $ptPT->categories[0]->id);
$ptBR = Language::getById('pt-BR');
$this->assertSame('Brazilian Portuguese', $ptBR->name);
$this->assertCount(3, $ptBR->categories);
$this->assertSame('one', $ptBR->categories[0]->id);
$ptCV = Language::getById('pt-CV');
$this->assertSame('Portuguese (Cape Verde)', $ptCV->name);
$this->assertCount(3, $ptCV->categories);
$this->assertSame('one', $ptCV->categories[0]->id);
$this->assertSame($pt->formula, $ptBR->formula);
$this->assertNotSame($pt->formula, $ptPT->formula);
$this->assertSame($ptBR->formula, $ptCV->formula);
}
}
|