Skip to content

Commit 4a4eadd

Browse files
committed
Add test for empty locale values
1 parent ac8d232 commit 4a4eadd

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

tests/Unit/LocalizerTest.php

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@ public function it_loops_through_the_detectors_and_returns_the_first_supported_l
1616
{
1717
$supportedLocales = ['en', 'nl'];
1818
$detectors = [
19-
Mockery::mock(Detector::class)->allows()->detect()->andReturns(false)->getMock(),
20-
Mockery::mock(Detector::class)->allows()->detect()->andReturns(null)->getMock(),
2119
Mockery::mock(Detector::class)->allows()->detect()->andReturns('de')->getMock(),
2220
Mockery::mock(Detector::class)->allows()->detect()->andReturns('nl')->getMock(),
2321
Mockery::mock(Detector::class)->allows()->detect()->andReturns('en')->getMock(),
@@ -46,8 +44,6 @@ public function it_returns_false_if_no_supported_locale_could_be_detected()
4644
{
4745
$supportedLocales = ['en'];
4846
$detectors = [
49-
Mockery::mock(Detector::class)->allows()->detect()->andReturns(false)->getMock(),
50-
Mockery::mock(Detector::class)->allows()->detect()->andReturns(null)->getMock(),
5147
Mockery::mock(Detector::class)->allows()->detect()->andReturns('de')->getMock(),
5248
Mockery::mock(Detector::class)->allows()->detect()->andReturns('nl')->getMock(),
5349
Mockery::mock(Detector::class)->allows()->detect()->andReturns('fr')->getMock(),
@@ -58,6 +54,23 @@ public function it_returns_false_if_no_supported_locale_could_be_detected()
5854
$this->assertFalse($localizer->detect());
5955
}
6056

57+
/** @test */
58+
public function it_skips_null_and_false_and_empty_values()
59+
{
60+
$supportedLocales = ['nl'];
61+
$detectors = [
62+
Mockery::mock(Detector::class)->allows()->detect()->andReturns(false)->getMock(),
63+
Mockery::mock(Detector::class)->allows()->detect()->andReturns(null)->getMock(),
64+
Mockery::mock(Detector::class)->allows()->detect()->andReturns([])->getMock(),
65+
Mockery::mock(Detector::class)->allows()->detect()->andReturns('')->getMock(),
66+
Mockery::mock(Detector::class)->allows()->detect()->andReturns('nl')->getMock(),
67+
];
68+
69+
$localizer = new Localizer($supportedLocales, $detectors);
70+
71+
$this->assertEquals('nl', $localizer->detect());
72+
}
73+
6174
/** @test */
6275
public function it_loops_through_the_stores_and_calls_the_store_method_with_the_given_locale()
6376
{

0 commit comments

Comments
 (0)