|
2 | 2 |
|
3 | 3 | declare(strict_types=1);
|
4 | 4 |
|
| 5 | +use LaravelLang\Config\Enums\Name; |
5 | 6 | use LaravelLang\Config\Facades\Config;
|
6 | 7 | use Tests\Constants\LocaleValue;
|
7 | 8 |
|
|
10 | 11 | $locale = LocaleValue::LocaleMain;
|
11 | 12 | $fallback = LocaleValue::LocaleAliasParent;
|
12 | 13 |
|
13 |
| - expect(localizedRoute($name . 'via.group.facade', ['foo' => 'bar'])) |
| 14 | + expect(localizedRoute($name . 'via.group.facade', ['foo' => 'bar', 'locale' => $locale])) |
14 | 15 | ->toEndWith("localhost/$locale/group/facade/bar");
|
15 | 16 |
|
16 | 17 | expect(localizedRoute($name . 'via.group.macro', ['foo' => 'bar', 'locale' => $fallback]))
|
17 | 18 | ->toEndWith("localhost/$fallback/group/macro/bar");
|
18 | 19 |
|
19 |
| - expect(localizedRoute('via.group.facade', ['foo' => 'bar'])) |
| 20 | + expect(localizedRoute('via.group.facade', ['foo' => 'bar', 'locale' => $locale])) |
20 | 21 | ->toEndWith("localhost/$locale/group/facade/bar");
|
21 | 22 |
|
22 | 23 | expect(localizedRoute('via.group.macro', ['foo' => 'bar', 'locale' => $fallback]))
|
|
26 | 27 | test('routes without groups', function () {
|
27 | 28 | $locale = LocaleValue::LocaleMain;
|
28 | 29 |
|
29 |
| - expect(localizedRoute('via.model.default', ['foo' => 'bar'])) |
| 30 | + expect(localizedRoute('via.model.default', ['foo' => 'bar', 'locale' => $locale])) |
30 | 31 | ->toEndWith('localhost/model/default/bar?locale=' . $locale);
|
31 | 32 | });
|
| 33 | + |
| 34 | +test('routes hide fallback', function (bool $set) { |
| 35 | + $locale = LocaleValue::LocaleMain; |
| 36 | + $fallback = LocaleValue::LocaleMain; |
| 37 | + |
| 38 | + config()->set(Name::Shared() . '.routes.hide_default', true); |
| 39 | + config()->set('app.fallback_locale', $fallback); |
| 40 | + |
| 41 | + $params = $set |
| 42 | + ? ['foo' => 'bar', 'locale' => $locale] |
| 43 | + : ['foo' => 'bar']; |
| 44 | + |
| 45 | + expect(localizedRoute('via.parameter', $params)) |
| 46 | + ->toEndWith("localhost/path/bar"); |
| 47 | +})->with([true, false]); |
| 48 | + |
| 49 | +test('routes hide manual', function () { |
| 50 | + $locale = LocaleValue::LocaleMain; |
| 51 | + $fallback = LocaleValue::LocaleAliasParent; |
| 52 | + |
| 53 | + config()->set(Name::Shared() . '.routes.hide_default', true); |
| 54 | + config()->set('app.fallback_locale', $fallback); |
| 55 | + |
| 56 | + expect(localizedRoute('via.parameter', ['foo' => 'bar', 'locale' => $locale])) |
| 57 | + ->toEndWith("localhost/path/bar/$locale"); |
| 58 | + |
| 59 | + expect(localizedRoute('via.parameter', ['foo' => 'bar', 'locale' => $fallback])) |
| 60 | + ->toEndWith("localhost/path/bar"); |
| 61 | +}); |
| 62 | + |
| 63 | +test('routes does not hide', function () { |
| 64 | + $fallback = LocaleValue::LocaleAliasParent; |
| 65 | + |
| 66 | + config()->set(Name::Shared() . '.routes.hide_default', true); |
| 67 | + config()->set('app.fallback_locale', $fallback); |
| 68 | + |
| 69 | + expect(localizedRoute('via.parameter', ['foo' => 'bar'])) |
| 70 | + ->toEndWith("localhost/path/bar"); |
| 71 | +}); |
0 commit comments