Skip to content

Commit 0d3eb4a

Browse files
committed
fix setting view handler serializer options
1 parent f163297 commit 0d3eb4a

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

DependencyInjection/FOSRestExtension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,7 @@ private function loadSerializer(array $config, ContainerBuilder $container)
483483
}
484484

485485
$options['serializeNullStrategy'] = $config['serializer']['serialize_null'];
486-
$viewHandler->addArgument($options);
486+
$viewHandler->replaceArgument(10, $options);
487487
}
488488

489489
private function loadZoneMatcherListener(array $config, XmlFileLoader $loader, ContainerBuilder $container)

Tests/DependencyInjection/FOSRestExtensionTest.php

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -488,6 +488,32 @@ public function testViewSerializeNullIsTrue()
488488
$this->assertTrue($this->container->getDefinition('fos_rest.view_handler.default')->getArgument(7));
489489
}
490490

491+
public function testViewHandlerSerializerOptions()
492+
{
493+
$config = [
494+
'fos_rest' => [
495+
'body_listener' => false,
496+
'exception' => [
497+
'exception_listener' => false,
498+
'serialize_exceptions' => false,
499+
],
500+
'routing_loader' => false,
501+
'serializer' => [
502+
'groups' => ['foo', 'bar'],
503+
'serialize_null' => true,
504+
'version' => '1.0',
505+
],
506+
],
507+
];
508+
$this->extension->load($config, $this->container);
509+
510+
$this->assertEquals([
511+
'exclusionStrategyGroups' => ['foo', 'bar'],
512+
'exclusionStrategyVersion' => '1.0',
513+
'serializeNullStrategy' => true,
514+
], $this->container->getDefinition('fos_rest.view_handler.default')->getArgument(10));
515+
}
516+
491517
public function testValidatorAliasWhenEnabled()
492518
{
493519
$config = [

0 commit comments

Comments
 (0)