Skip to content
This repository was archived by the owner on Sep 16, 2021. It is now read-only.

Commit e4e260d

Browse files
committed
Throw exception if JmsSerializerBundle is not registered
1 parent cfd2f4c commit e4e260d

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

src/DependencyInjection/CmfResourceRestExtension.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,11 @@ public function load(array $configs, ContainerBuilder $container)
3535
$configuration = new Configuration();
3636
$config = $processor->processConfiguration($configuration, $configs);
3737

38+
$bundles = $container->getParameter('kernel.bundles');
39+
if (!array_key_exists('JMSSerializerBundle', $bundles)) {
40+
throw new \LogicException('The JMSSerializerBundle must be registered in order to use the CmfResourceRestBundle.');
41+
}
42+
3843
$container->setParameter('cmf_resource_rest.max_depth', $config['max_depth']);
3944

4045
$loader->load('serializer.xml');

tests/Unit/DependencyInjection/CmfResourceRestExtensionTest.php

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,23 @@ public function provideExtension()
4949
*/
5050
public function testExtension($config)
5151
{
52-
$this->container->setParameter('kernel.bundles', array());
52+
$this->container->setParameter('kernel.bundles', ['JMSSerializerBundle' => true]);
5353
$this->container->addCompilerPass(new EnhancerPass());
54+
5455
$this->load($config);
56+
57+
$this->compile();
58+
}
59+
60+
/**
61+
* @expectedException \LogicException
62+
* @expectedExceptionMessage The JMSSerializerBundle must be registered
63+
*/
64+
public function testNoJmsSerializerBundleRegistered()
65+
{
66+
$this->container->setParameter('kernel.bundles', []);
67+
68+
$this->load([]);
5569
$this->compile();
5670
}
5771
}

tests/Unit/DependencyInjection/ConfigurationTest.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ public function testConfig($source)
5353
'enhancer' => 'my_enhancer',
5454
),
5555
),
56+
'max_depth' => 2,
5657
), array($source));
5758
}
5859
}

0 commit comments

Comments
 (0)