[FrameworkBundle] Add missing XML config for circular_reference_handler. Add tests.
This commit is contained in:
parent
4be63f9f4a
commit
611ff59c3e
@ -230,6 +230,7 @@
|
|||||||
<xsd:attribute name="cache" type="xsd:string" />
|
<xsd:attribute name="cache" type="xsd:string" />
|
||||||
<xsd:attribute name="enable-annotations" type="xsd:boolean" />
|
<xsd:attribute name="enable-annotations" type="xsd:boolean" />
|
||||||
<xsd:attribute name="name-converter" type="xsd:string" />
|
<xsd:attribute name="name-converter" type="xsd:string" />
|
||||||
|
<xsd:attribute name="circular-reference-handler" type="xsd:string" />
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
|
|
||||||
<xsd:complexType name="property_info">
|
<xsd:complexType name="property_info">
|
||||||
|
@ -68,6 +68,7 @@ $container->loadFromExtension('framework', array(
|
|||||||
'enabled' => true,
|
'enabled' => true,
|
||||||
'enable_annotations' => true,
|
'enable_annotations' => true,
|
||||||
'name_converter' => 'serializer.name_converter.camel_case_to_snake_case',
|
'name_converter' => 'serializer.name_converter.camel_case_to_snake_case',
|
||||||
|
'circular_reference_handler' => 'my.circular.reference.handler',
|
||||||
),
|
),
|
||||||
'property_info' => true,
|
'property_info' => true,
|
||||||
'ide' => 'file%%link%%format',
|
'ide' => 'file%%link%%format',
|
||||||
|
@ -41,7 +41,7 @@
|
|||||||
</framework:translator>
|
</framework:translator>
|
||||||
<framework:validation enabled="true" />
|
<framework:validation enabled="true" />
|
||||||
<framework:annotations cache="file" debug="true" file-cache-dir="%kernel.cache_dir%/annotations" />
|
<framework:annotations cache="file" debug="true" file-cache-dir="%kernel.cache_dir%/annotations" />
|
||||||
<framework:serializer enabled="true" enable-annotations="true" name-converter="serializer.name_converter.camel_case_to_snake_case" />
|
<framework:serializer enabled="true" enable-annotations="true" name-converter="serializer.name_converter.camel_case_to_snake_case" circular-reference-handler="my.circular.reference.handler" />
|
||||||
<framework:property-info />
|
<framework:property-info />
|
||||||
</framework:config>
|
</framework:config>
|
||||||
</container>
|
</container>
|
||||||
|
@ -51,9 +51,10 @@ framework:
|
|||||||
debug: true
|
debug: true
|
||||||
file_cache_dir: '%kernel.cache_dir%/annotations'
|
file_cache_dir: '%kernel.cache_dir%/annotations'
|
||||||
serializer:
|
serializer:
|
||||||
enabled: true
|
enabled: true
|
||||||
enable_annotations: true
|
enable_annotations: true
|
||||||
name_converter: serializer.name_converter.camel_case_to_snake_case
|
name_converter: serializer.name_converter.camel_case_to_snake_case
|
||||||
|
circular_reference_handler: my.circular.reference.handler
|
||||||
property_info: ~
|
property_info: ~
|
||||||
ide: file%%link%%format
|
ide: file%%link%%format
|
||||||
request:
|
request:
|
||||||
|
@ -781,6 +781,7 @@ abstract class FrameworkExtensionTest extends TestCase
|
|||||||
$this->assertNull($container->getDefinition('serializer.mapping.class_metadata_factory')->getArgument(1));
|
$this->assertNull($container->getDefinition('serializer.mapping.class_metadata_factory')->getArgument(1));
|
||||||
$this->assertEquals(new Reference('serializer.name_converter.camel_case_to_snake_case'), $container->getDefinition('serializer.normalizer.object')->getArgument(1));
|
$this->assertEquals(new Reference('serializer.name_converter.camel_case_to_snake_case'), $container->getDefinition('serializer.normalizer.object')->getArgument(1));
|
||||||
$this->assertEquals(new Reference('property_info', ContainerBuilder::IGNORE_ON_INVALID_REFERENCE), $container->getDefinition('serializer.normalizer.object')->getArgument(3));
|
$this->assertEquals(new Reference('property_info', ContainerBuilder::IGNORE_ON_INVALID_REFERENCE), $container->getDefinition('serializer.normalizer.object')->getArgument(3));
|
||||||
|
$this->assertEquals(array('setCircularReferenceHandler', array(new Reference('my.circular.reference.handler'))), $container->getDefinition('serializer.normalizer.object')->getMethodCalls()[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testRegisterSerializerExtractor()
|
public function testRegisterSerializerExtractor()
|
||||||
|
Reference in New Issue
Block a user