public function testPostProcessBackendLayout(Provider $provider, $record, $messageFunction, $messageCount, array $expected) { $instance = new BackendLayout(); $pageUid = 1; $backendLayout = array(); /** @var ConfigurationService|\PHPUnit_Framework_MockObject_MockObject $configurationService */ $configurationService = $this->getMock('FluidTYPO3\\Fluidpages\\Service\\ConfigurationService', array('resolvePrimaryConfigurationProvider', 'debug', 'message')); $configurationService->expects($this->exactly($messageCount))->method($messageFunction); if (null !== $record) { $configurationService->expects($this->once())->method('resolvePrimaryConfigurationProvider')->with('pages', 'tx_fed_page_flexform', $record)->willReturn($provider); } /** @var WorkspacesAwareRecordService|\PHPUnit_Framework_MockObject_MockObject $recordService */ $recordService = $this->getMock('FluidTYPO3\\Flux\\Service\\WorkspacesAwareRecordService', array('getSingle')); $recordService->expects($this->once())->method('getSingle')->willReturn($record); $instance->injectConfigurationService($configurationService); $instance->injectWorkspacesAwareRecordService($recordService); $instance->postProcessBackendLayout($pageUid, $backendLayout); $this->assertEquals($expected, $backendLayout); }