/** * */ public function testDoctrineEnabledConfig() { if (class_exists(DoctrineExtension::class)) { $doctrineExtension = new DoctrineExtension(); $doctrineExtension->load([], $this->container); $this->container->registerExtension($doctrineExtension); $this->container->setParameter('kernel.bundles', ['DoctrineBundle' => $doctrineExtension]); $this->extension->load([['report' => ['enabled' => true]]], $this->container); $this->extension->prepend($this->container); $this->assertTrue($this->container->getParameter($this->root . '.report.enabled')); $this->assertTrue($this->container->hasParameter($this->root . '.report.database.driver')); $this->assertTrue($this->container->hasParameter($this->root . '.report.database.user')); $this->assertTrue($this->container->hasParameter($this->root . '.report.database.password')); $this->assertTrue($this->container->hasParameter($this->root . '.report.database.path')); $config = $this->container->getExtensionConfig('doctrine')[0]; $this->assertArrayHasKey($this->root, $config['dbal']['connections']); $this->assertArrayHasKey($this->root, $config['orm']['entity_managers']); $this->assertEquals($this->root, $config['orm']['entity_managers'][$this->root]['connection']); $this->assertContains($this->root . '.listener.executionreport', $this->container->getServiceIds()); } else { $this->markTestSkipped('DoctrineBundle not found.'); } }
public function testAnnotationsBundleMappingDetectionWithVendorNamespace() { $container = $this->getContainer('AnnotationsBundle', 'Vendor'); $loader = new DoctrineExtension(); $config = $this->getConnectionConfig(); $config['orm'] = array('default_entity_manager' => 'default', 'entity_managers' => array('default' => array('mappings' => array('AnnotationsBundle' => array())))); $loader->load(array($config), $container); $calls = $container->getDefinition('doctrine.orm.default_metadata_driver')->getMethodCalls(); $this->assertEquals('doctrine.orm.default_annotation_metadata_driver', (string) $calls[0][1][0]); $this->assertEquals('Fixtures\\Bundles\\Vendor\\AnnotationsBundle\\Entity', $calls[0][1][1]); }
public function testShardManager() { $container = $this->getContainer(); $extension = new DoctrineExtension(); $config = $this->getConnectionConfig(); $config['dbal'] = array('connections' => array('foo' => array('shards' => array('test' => array('id' => 1))), 'bar' => array())); $extension->load(array($config), $container); $this->assertTrue($container->hasDefinition('doctrine.dbal.foo_shard_manager')); $this->assertFalse($container->hasDefinition('doctrine.dbal.bar_shard_manager')); }
public function testCacheConfiguration() { $container = $this->getContainer(); $extension = new DoctrineExtension(); $config = $this->getConnectionConfig(); $config['orm'] = array('metadata_cache_driver' => array('cache_provider' => 'metadata_cache'), 'query_cache_driver' => array('cache_provider' => 'query_cache'), 'result_cache_driver' => array('cache_provider' => 'result_cache')); $extension->load(array($config), $container); $this->assertTrue($container->hasAlias('doctrine.orm.default_metadata_cache')); $alias = $container->getAlias('doctrine.orm.default_metadata_cache'); $this->assertEquals('doctrine_cache.providers.metadata_cache', (string) $alias); $this->assertTrue($container->hasAlias('doctrine.orm.default_query_cache')); $alias = $container->getAlias('doctrine.orm.default_query_cache'); $this->assertEquals('doctrine_cache.providers.query_cache', (string) $alias); $this->assertTrue($container->hasAlias('doctrine.orm.default_result_cache')); $alias = $container->getAlias('doctrine.orm.default_result_cache'); $this->assertEquals('doctrine_cache.providers.result_cache', (string) $alias); }