10000 tests(mapQueryString): add unit test · symfony/symfony@a7413be · GitHub
[go: up one dir, main page]

Skip to content

Commit a7413be

Browse files
committed
tests(mapQueryString): add unit test
1 parent 43761da commit a7413be

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

src/Symfony/Component/HttpKernel/Tests/Controller/ArgumentResolver/RequestPayloadValueResolverTest.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -874,6 +874,27 @@ public function testBoolArgumentInJsonBody()
874874

875875
$this->assertTrue($event->getArguments()[0]->value);
876876
}
877+
878+
public function testConfigKeyForQueryString()
879+
{
880+
$serializer = new Serializer([new ObjectNormalizer()]);
881+
$validator = $this->createMock(ValidatorInterface::class);
882+
$resolver = new RequestPayloadValueResolver($serializer, $validator);
883+
884+
$argument = new ArgumentMetadata('filtered', QueryPayload::class, false, false, null, false, [
885+
MapQueryString::class => new MapQueryString(key: 'value'),
886+
]);
887+
$request = Request::create('/', Request::METHOD_GET, ['value' => ['page' => 1.0]]);
888+
889+
$kernel = $this->createMock(HttpKernelInterface::class);
890+
$arguments = $resolver->resolve($request, $argument);
891+
$event = new ControllerArgumentsEvent($kernel, function () {}, $arguments, $request, HttpKernelInterface::MAIN_REQUEST);
892+
893+
$resolver->onKernelControllerArguments($event);
894+
895+
$this->assertInstanceOf(QueryPayload::class, $event->getArguments()[0]);
896+
$this->assertSame(1.0, $event->getArguments()[0]->page);
897+
}
877898
}
878899

879900
class RequestPayload

0 commit comments

Comments
 (0)
0