|
2 | 2 |
|
3 | 3 | namespace Laravel\Octane\Tests; |
4 | 4 |
|
| 5 | +use Carbon\Carbon; |
5 | 6 | use Illuminate\Foundation\Application; |
6 | 7 | use Illuminate\Http\Request; |
7 | 8 |
|
@@ -29,4 +30,27 @@ public function test_translator_state_is_reset_across_subsequent_requests() |
29 | 30 | $this->assertEquals('en', $client->responses[1]->getContent()); |
30 | 31 | $this->assertEquals('ms', $client->responses[2]->getContent()); |
31 | 32 | } |
| 33 | + |
| 34 | + public function test_carbon_state_is_reset_across_subsequent_requests() |
| 35 | + { |
| 36 | + [$app, $worker, $client] = $this->createOctaneContext([ |
| 37 | + Request::create('/test-locale', 'GET'), // should be "en" |
| 38 | + Request::create('/test-locale?locale=nl', 'GET'), |
| 39 | + Request::create('/test-locale', 'GET'), // should be "en", and not "nl"... |
| 40 | + ]); |
| 41 | + |
| 42 | + $app['router']->get('/test-locale', function (Application $app, Request $request) { |
| 43 | + if ($request->has('locale')) { |
| 44 | + Carbon::setLocale($request->query('locale')); |
| 45 | + } |
| 46 | + |
| 47 | + return now()->getLocale(); |
| 48 | + }); |
| 49 | + |
| 50 | + $worker->run(); |
| 51 | + |
| 52 | + $this->assertEquals('en', $client->responses[0]->getContent()); |
| 53 | + $this->assertEquals('nl', $client->responses[1]->getContent()); |
| 54 | + $this->assertEquals('en', $client->responses[2]->getContent()); |
| 55 | + } |
32 | 56 | } |
0 commit comments