/** * @test * @return void */ public function testExecuteLocalizedException() { $path = 'adminhtml/*/'; $themeId = 1; $this->request->expects($this->any()) ->method('getParam') ->willReturnMap( [ ['id', null, $themeId], ['back', false, false], ] ); $redirect = $this->getMockBuilder('Magento\Framework\Controller\Result\Redirect') ->disableOriginalConstructor() ->getMock(); $this->objectManager->expects($this->once()) ->method('create') ->with('Magento\Framework\View\Design\ThemeInterface') ->willThrowException(new \Magento\Framework\Exception\LocalizedException(__('localized exception'))); $this->resultFactory->expects($this->once()) ->method('create') ->with(ResultFactory::TYPE_REDIRECT) ->willReturn($redirect); $redirect->expects($this->once()) ->method('setPath') ->with($path) ->willReturnSelf(); $this->messageManager->expects($this->once()) ->method('addError'); $this->assertInstanceOf('Magento\Framework\Controller\Result\Redirect', $this->controller->executeInternal()); }
/** * {@inheritdoc} */ public function dispatch(\Magento\Framework\App\RequestInterface $request) { $pluginInfo = $this->pluginList->getNext($this->subjectType, 'dispatch'); if (!$pluginInfo) { return parent::dispatch($request); } else { return $this->___callPlugins('dispatch', func_get_args(), $pluginInfo); } }