Completed
Push — master ( f1facd...b679d6 )
by Artem
02:02
created

RussianToEnglishTest::transliterationFromRussianToEnglish()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 2
1
<?php
2
/*
3
 * This file is part of the Transliteration library
4
 *
5
 * (c) Mykhailo Vilshansky <[email protected]>
6
 *
7
 * For the full copyright and license information, please view the LICENSE
8
 * file that was distributed with this source code.
9
 */
10
namespace Tests\Fresh\Transliteration;
11
use Fresh\Transliteration\Transliterator;
12
/**
13
 * RussianToEnglish Transliterator Test
14
 *
15
 * @author Mykhailo Vilshansky <[email protected]>
16
 */
17
class RussianToEnglishTest extends \PHPUnit_Framework_TestCase
18
{
19
    /**
20
     * @var Transliterator
21
     */
22
    protected $transliterator;
23
    /**
24
     * Set up environment
25
     */
26
    public function setUp()
27
    {
28
        $this->transliterator = new Transliterator();
29
    }
30
    /**
31
     * Test transliteration from Russian to English
32
     *
33
     * @param array $russianText      Russian text
34
     * @param array $transliteratedText Expected transliterated text
35
     *
36
     * @test
37
     * @covers \Fresh\Transliteration\Transliterator
38
     * @covers \Fresh\Transliteration\RussianToEnglish
39
     * @dataProvider dataProvider
40
     */
41
    public function transliterationFromRussianToEnglish($russianText, $transliteratedText)
42
    {
43
        $this->assertEquals($transliteratedText, $this->transliterator->ruToEn($russianText));
44
    }
45
    /**
46
     * Data provider for transliteration from Russian to English
47
     *
48
     * @return array
49
     */
50
    public function dataProvider()
51
    {
52
        return [
53
            // Russian alphabet
54
            ['а', 'a'],
55
            ['б', 'b'],
56
            ['в', 'v'],
57
            ['г', 'g'],
58
            ['д', 'd'],
59
            ['е', 'e'],
60
            ['ё', 'e'],
61
            ['ж', 'zh'],
62
            ['з', 'z'],
63
            ['и', 'i'],
64
            ['й', 'y'],
65
            ['к', 'k'],
66
            ['л', 'l'],
67
            ['м', 'm'],
68
            ['н', 'n'],
69
            ['о', 'o'],
70
            ['п', 'p'],
71
            ['р', 'r'],
72
            ['с', 's'],
73
            ['т', 't'],
74
            ['у', 'u'],
75
            ['ф', 'f'],
76
            ['х', 'h'],
77
            ['ц', 'ts'],
78
            ['ч', 'ch'],
79
            ['ш', 'sh'],
80
            ['щ', 'sht'], 
81
            ['ь', '\''],
82
            ['ы', 'y'],
83
            ['ъ', '\''],
84
            ['ю', 'yu'],
85
            ['я', 'ya'],
86
            ['А', 'A'],
87
            ['Б', 'B'],
88
            ['В', 'V'],
89
            ['Г', 'G'],
90
            ['Д', 'D'],
91
            ['Е', 'E'],
92
            ['Ж', 'Zh'],
93
            ['З', 'Z'],
94
            ['И', 'I'],
95
            ['Й', 'Y'],
96
            ['К', 'K'],
97
            ['Л', 'L'],
98
            ['М', 'M'],
99
            ['Н', 'N'],
100
            ['О', 'O'],
101
            ['П', 'P'],
102
            ['Р', 'R'],
103
            ['С', 'S'],
104
            ['Т', 'T'],
105
            ['У', 'U'],
106
            ['Ф', 'F'],
107
            ['Х', 'H'],
108
            ['Ц', 'Ts'],
109
            ['Ч', 'Ch'],
110
            ['Ш', 'Sh'],
111
            ['Щ', 'Sht'],
112
            ['Ь', '\''],
113
            ['Ы','Y]',
114
            ['Ъ','\''],
115
            ['Ю', 'Yu'],
116
            ['Я', 'Ya'],
117
        ];
0 ignored issues
show
Bug introduced by
This code did not parse for me. Apparently, there is an error somewhere around this line:

Syntax error, unexpected ';', expecting ']'
Loading history...
118
    }
119
}
120