@@ -19,7 +19,7 @@ public function testGetLineReturnsLine()
1919 {
2020 $ lang = new MockLanguage ('en ' );
2121
22- $ lang ->setData ([
22+ $ lang ->setData (' books ' , [
2323 'bookSaved ' => 'We kept the book free from the boogeyman ' ,
2424 'booksSaved ' => 'We saved some more ' ,
2525 ]);
@@ -29,11 +29,49 @@ public function testGetLineReturnsLine()
2929
3030 //--------------------------------------------------------------------
3131
32+ public function testGetLineReturnsFallbackLine ()
33+ {
34+ $ lang = new MockLanguage ('en-US ' );
35+ $ lang ->setData ('equivalent ' , [
36+ 'touchWood ' => 'touch wood ' ,
37+ 'lieOfLand ' => 'lie of the land ' ,
38+ 'leaseOfLife ' => 'a new lease of life ' ,
39+ 'slowcoach ' => 'slowcoach ' ,
40+ ], 'en ' );
41+ $ lang ->setData ('equivalent ' , [
42+ 'lieOfLand ' => 'lay of the land ' ,
43+ 'slowcoach ' => 'slowpoke ' ,
44+ ], 'en-US ' );
45+
46+ $ this ->assertEquals (
47+ 'lay of the land ' ,
48+ $ lang ->getLine ('equivalent.lieOfLand ' )
49+ );
50+ $ this ->assertEquals (
51+ 'slowpoke ' ,
52+ $ lang ->getLine ('equivalent.slowcoach ' )
53+ );
54+ $ this ->assertEquals (
55+ 'a new lease of life ' ,
56+ $ lang ->getLine ('equivalent.leaseOfLife ' )
57+ );
58+ $ this ->assertEquals (
59+ 'touch wood ' ,
60+ $ lang ->getLine ('equivalent.touchWood ' )
61+ );
62+ $ this ->assertEquals (
63+ 'equivalent.unknown ' ,
64+ $ lang ->getLine ('equivalent.unknown ' )
65+ );
66+ }
67+
68+ //--------------------------------------------------------------------
69+
3270 public function testGetLineArrayReturnsLineArray ()
3371 {
3472 $ lang = new MockLanguage ('en ' );
3573
36- $ lang ->setData ([
74+ $ lang ->setData (' books ' , [
3775 'booksList ' => [
3876 'The Boogeyman ' ,
3977 'We Saved ' ,
@@ -58,7 +96,7 @@ public function testGetLineFormatsMessage()
5896
5997 $ lang = new MockLanguage ('en ' );
6098
61- $ lang ->setData ([
99+ $ lang ->setData (' books ' , [
62100 'bookCount ' => '{0, number, integer} books have been saved. ' ,
63101 ]);
64102
@@ -77,7 +115,7 @@ public function testGetLineArrayFormatsMessages()
77115
78116 $ lang = new MockLanguage ('en ' );
79117
80- $ lang ->setData ([
118+ $ lang ->setData (' books ' , [
81119 'bookList ' => [
82120 '{0, number, integer} related books. '
83121 ],
@@ -107,7 +145,7 @@ public function testLangDoesntFormat()
107145 $ lang = new MockLanguage ('en ' );
108146 $ lang ->disableIntlSupport ();
109147
110- $ lang ->setData ([
148+ $ lang ->setData (' books ' , [
111149 'bookList ' => [
112150 '{0, number, integer} related books. '
113151 ],
@@ -160,13 +198,13 @@ public function testLanguageSameKeyAndFileName()
160198 $ lang = new MockLanguage ('en ' );
161199
162200 // first file data | example.message
163- $ lang ->setData (['message ' => 'This is an example message ' ]);
201+ $ lang ->setData (' example ' , ['message ' => 'This is an example message ' ]);
164202
165203 // force loading data into file Example
166204 $ this ->assertEquals ('This is an example message ' , $ lang ->getLine ('example.message ' ));
167205
168206 // second file data | another.example
169- $ lang ->setData (['example ' => 'Another example ' ]);
207+ $ lang ->setData (' another ' , ['example ' => 'Another example ' ]);
170208
171209 $ this ->assertEquals ('Another example ' , $ lang ->getLine ('another.example ' ));
172210 }
0 commit comments