public function resolveControllerThrowsAnInvalidControllerExceptionIfTheResolvedControllerDoesNotImplementTheControllerInterface()
{
$mockController = $this->createMock('stdClass');
/** @var ObjectManagerInterface|\PHPUnit_Framework_MockObject_MockObject $mockObjectManager */
$mockObjectManager = $this->createMock(ObjectManagerInterface::class);
$mockObjectManager->expects($this->once())->method('get')->with($this->equalTo('Flow\\TestPackage\\SomeController'))->will($this->returnValue($mockController));
$mockRequest = $this->getMockBuilder(ActionRequest::class)->disableOriginalConstructor()->setMethods(['getControllerPackageKey', 'getControllerObjectName'])->getMock();
$mockRequest->expects($this->any())->method('getControllerObjectName')->will($this->returnValue('Flow\\TestPackage\\SomeController'));
/** @var Dispatcher|\PHPUnit_Framework_MockObject_MockObject $dispatcher */
$dispatcher = $this->getAccessibleMock(Dispatcher::class, ['dummy']);
$dispatcher->injectObjectManager($mockObjectManager);
$this->assertEquals($mockController, $dispatcher->_call('resolveController', $mockRequest));
}