public function testGetEntitiesMetadata() { $this->entityProvider->expects($this->at(0))->method('getEntity')->will($this->returnvalue($this->entityConfig1)); $this->entityProvider->expects($this->at(1))->method('getEntity')->will($this->returnvalue($this->entityConfig2)); $this->entityProvider->expects($this->at(2))->method('getEntity')->will($this->returnvalue($this->entityConfig3)); $extendConfigModel = $this->getMock('Oro\\Bundle\\EntityConfigBundle\\Config\\ConfigInterface'); $extendConfigModel->expects($this->any())->method('get')->with($this->equalTo('owner'))->will($this->returnValue('Custom')); $extendProvider = $this->getMockBuilder('Oro\\Bundle\\EntityConfigBundle\\Provider\\ConfigProvider')->disableOriginalConstructor()->getMock(); $extendProvider->expects($this->once())->method('map')->will($this->returnValue([])); $extendProvider->expects($this->any())->method('getConfig')->will($this->returnValue($extendConfigModel)); $this->configManager->expects($this->any())->method('getProvider')->with($this->equalTo('extend'))->will($this->returnValue($extendProvider)); $this->configManager->expects($this->any())->method('getConfigEntityModel')->will($this->onConsecutiveCalls($this->entityConfigModel1, $this->entityConfigModel2)); $this->router->expects($this->exactly(4))->method('generate'); /** @var MetadataProvider $provider */ $provider = new MetadataProvider($this->settingsProvider, $this->entityProvider, $this->configManager, $this->router); $result = $provider->getEntitiesMetadata(); for ($i = 1; $i < 3; $i++) { $expectedConfig = $this->getExpectedConfig($i); $entityName = $expectedConfig['name']; $this->assertEquals($expectedConfig, $result[$entityName]); } }