Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit15ae20f

Browse files
committed
Add default mapping path for serializer component
1 parent8e5b3b1 commit15ae20f

File tree

3 files changed

+17
-2
lines changed

3 files changed

+17
-2
lines changed

‎src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,6 +1187,11 @@ private function registerSerializerConfiguration(array $config, ContainerBuilder
11871187
}
11881188
}
11891189

1190+
$projectDir =$container->getParameter('kernel.project_dir');
1191+
if ($container->fileExists($dir =$projectDir.'/config/serializer','/^$/')) {
1192+
$this->registerMappingFilesFromDir($dir,$fileRecorder);
1193+
}
1194+
11901195
$this->registerMappingFilesFromConfig($container,$config,$fileRecorder);
11911196

11921197
$chainLoader->replaceArgument(0,$serializerLoaders);

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php‎

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -742,7 +742,7 @@ public function testSerializerEnabled()
742742

743743
$argument =$container->getDefinition('serializer.mapping.chain_loader')->getArgument(0);
744744

745-
$this->assertCount(1,$argument);
745+
$this->assertCount(2,$argument);
746746
$this->assertEquals('Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader',$argument[0]->getClass());
747747
$this->assertNull($container->getDefinition('serializer.mapping.class_metadata_factory')->getArgument(1));
748748
$this->assertEquals(newReference('serializer.name_converter.camel_case_to_snake_case'),$container->getDefinition('serializer.normalizer.object')->getArgument(1));
@@ -839,23 +839,33 @@ public function testSerializerCacheDisabled()
839839
publicfunctiontestSerializerMapping()
840840
{
841841
$container =$this->createContainerFromFile('serializer_mapping',array('kernel.bundles_metadata' =>array('TestBundle' =>array('namespace' =>'Symfony\\Bundle\\FrameworkBundle\\Tests','path' =>__DIR__.'/Fixtures/TestBundle'))));
842+
$projectDir =$container->getParameter('kernel.project_dir');
842843
$configDir =__DIR__.'/Fixtures/TestBundle/Resources/config';
843844
$expectedLoaders =array(
844845
newDefinition(AnnotationLoader::class,array(newReference('annotation_reader'))),
845846
newDefinition(XmlFileLoader::class,array($configDir.'/serialization.xml')),
846847
newDefinition(YamlFileLoader::class,array($configDir.'/serialization.yml')),
848+
newDefinition(YamlFileLoader::class,array($projectDir.'/config/serializer/foo.yml')),
847849
newDefinition(XmlFileLoader::class,array($configDir.'/serializer_mapping/files/foo.xml')),
848850
newDefinition(YamlFileLoader::class,array($configDir.'/serializer_mapping/files/foo.yml')),
849851
newDefinition(YamlFileLoader::class,array($configDir.'/serializer_mapping/serialization.yml')),
850852
newDefinition(YamlFileLoader::class,array($configDir.'/serializer_mapping/serialization.yaml')),
851853
);
852854

853855
foreach ($expectedLoadersas$definition) {
856+
if (is_file($arg =$definition->getArgument(0))) {
857+
$definition->replaceArgument(0,str_replace('/',DIRECTORY_SEPARATOR,$arg));
858+
}
854859
$definition->setPublic(false);
855860
}
856861

857862
$loaders =$container->getDefinition('serializer.mapping.chain_loader')->getArgument(0);
858-
$this->assertEquals(sort($expectedLoaders),sort($loaders));
863+
foreach ($loadersas$loader) {
864+
if (is_file($arg =$loader->getArgument(0))) {
865+
$loader->replaceArgument(0,str_replace('/',DIRECTORY_SEPARATOR,$arg));
866+
}
867+
}
868+
$this->assertEquals($expectedLoaders,$loaders);
859869
}
860870

861871
publicfunctiontestAssetHelperWhenAssetsAreEnabled()

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/config/serializer/foo.yml‎

Whitespace-only changes.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp