/**
* @expectedException \eZ\Bundle\EzPublishCoreBundle\ApiLoader\Exception\InvalidStorageEngine
*/
public function testBuildInvalidStorageEngine()
{
$configResolver = $this->getConfigResolverMock();
$repositoryAlias = 'main';
$repositories = array($repositoryAlias => array('engine' => 'undefined_storage_engine'), 'another' => array('engine' => 'bar'));
$storageEngines = array('foo' => $this->getMock('eZ\\Publish\\SPI\\Persistence\\Handler'), 'bar' => $this->getMock('eZ\\Publish\\SPI\\Persistence\\Handler'), 'baz' => $this->getMock('eZ\\Publish\\SPI\\Persistence\\Handler'));
$storageRepositoryProvider = new StorageRepositoryProvider($configResolver, $repositories);
$factory = new StorageEngineFactory($storageRepositoryProvider);
foreach ($storageEngines as $identifier => $persistenceHandler) {
$factory->registerStorageEngine($persistenceHandler, $identifier);
}
$configResolver->expects($this->once())->method('getParameter')->with('repository')->will($this->returnValue($repositoryAlias));
$this->assertSame($this->getMock('eZ\\Publish\\SPI\\Persistence\\Handler'), $factory->buildStorageEngine());
}