request = $this->createMock(\Magento\Framework\App\Request\Http::class); $this->response = $this->createMock(\Magento\Framework\App\Response\Http::class); $this->quote = $this->createMock(\Magento\Quote\Model\Quote::class); $this->eventManager = $this->createMock(\Magento\Framework\Event\Manager::class); $this->checkoutSession = $this->createMock(\Magento\Checkout\Model\Session::class); $this->objectManagerMock = $this->createMock(\Magento\Framework\ObjectManager\ObjectManager::class); $this->messageManager = $this->getMockBuilder(\Magento\Framework\Message\ManagerInterface::class) ->disableOriginalConstructor() ->getMock(); $context = $this->createMock(\Magento\Framework\App\Action\Context::class); $context->expects($this->once()) ->method('getObjectManager') ->willReturn($this->objectManagerMock); $context->expects($this->once()) ->method('getRequest') ->willReturn($this->request); $context->expects($this->once()) ->method('getResponse') ->willReturn($this->response); $context->expects($this->once()) ->method('getEventManager') ->willReturn($this->eventManager); $context->expects($this->once()) ->method('getMessageManager') ->willReturn($this->messageManager); $this->cart = $this->getMockBuilder(\Magento\Checkout\Model\Cart::class) ->disableOriginalConstructor() ->getMock(); $this->scopeConfig = $this->getMockBuilder(\Magento\Framework\App\Config\ScopeConfigInterface::class) ->disableOriginalConstructor() ->getMock(); $this->resultPageFactory = $this->getMockBuilder(\Magento\Framework\View\Result\PageFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $objectManagerHelper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); $this->controller = $objectManagerHelper->getObject( \Magento\Checkout\Controller\Cart\Index::class, [ 'context' => $context, 'checkoutSession' => $this->checkoutSession, 'cart' => $this->cart, 'scopeConfig' => $this->scopeConfig, 'resultPageFactory' => $this->resultPageFactory ] ); } /** * @return void */ public function testExecuteWithMessages() { $title = $this->getMockBuilder(\Magento\Framework\View\Page\Title::class) ->disableOriginalConstructor() ->getMock(); $title->expects($this->once()) ->method('set') ->with('Shopping Cart'); $config = $this->getMockBuilder(\Magento\Framework\View\Page\Config::class) ->disableOriginalConstructor() ->getMock(); $config->expects($this->once()) ->method('getTitle') ->willReturn($title); $page = $this->getMockBuilder(\Magento\Framework\View\Result\Page::class) ->disableOriginalConstructor() ->getMock(); $page->expects($this->once()) ->method('getConfig') ->willReturn($config); $this->resultPageFactory->expects($this->once()) ->method('create') ->willReturn($page); $result = $this->controller->execute(); $this->assertInstanceOf(\Magento\Framework\View\Result\Page::class, $result); } }