1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
<?php
namespace Illuminate\Tests\Foundation\Http\Middleware;
use Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull;
use Illuminate\Http\Request;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\Request as SymfonyRequest;
class ConvertEmptyStringsToNullTest extends TestCase
{
public function testConvertsEmptyStringsToNull()
{
$middleware = new ConvertEmptyStringsToNull;
$symfonyRequest = new SymfonyRequest([
'foo' => 'bar',
'baz' => '',
]);
$symfonyRequest->server->set('REQUEST_METHOD', 'GET');
$request = Request::createFromBase($symfonyRequest);
$middleware->handle($request, function (Request $request) {
$this->assertSame('bar', $request->get('foo'));
$this->assertNull($request->get('baz'));
});
}
public function testSkipConvertsEmptyStringsToNull()
{
$middleware = new ConvertEmptyStringsToNull;
ConvertEmptyStringsToNull::skipWhen(fn ($request) => '' === $request->baz);
$symfonyRequest = new SymfonyRequest([
'foo' => 'bar',
'baz' => '',
]);
$symfonyRequest->server->set('REQUEST_METHOD', 'GET');
$request = Request::createFromBase($symfonyRequest);
$middleware->handle($request, function (Request $request) {
$this->assertSame('bar', $request->get('foo'));
$this->assertSame('', $request->get('baz'));
});
}
}
|