@@ -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