File: GetTest.php

package info (click to toggle)
php-gettext-languages 2.10.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 476 kB
  • sloc: php: 1,358; makefile: 12; xml: 10
file content (79 lines) | stat: -rw-r--r-- 3,128 bytes parent folder | download | duplicates (2)
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);
    }
}