formKeyValidator = $this->getMockBuilder(\Magento\Framework\Data\Form\FormKey\Validator::class) ->disableOriginalConstructor()->getMock(); $this->resultRedirectFactory = $this->getMockBuilder(\Magento\Framework\Controller\Result\RedirectFactory::class) ->disableOriginalConstructor()->getMock(); $this->request = $this->getMockBuilder(\Magento\Framework\App\RequestInterface::class) ->disableOriginalConstructor()->getmock(); $this->messageManager = $this->getMockBuilder(\Magento\Framework\Message\ManagerInterface::class) ->disableOriginalConstructor()->getMock(); $this->objectManagerHelper = new ObjectManagerHelper($this); $this->cartAdd = $this->objectManagerHelper->getObject( \Magento\Checkout\Controller\Cart\Add::class, [ '_formKeyValidator' => $this->formKeyValidator, 'resultRedirectFactory' => $this->resultRedirectFactory, '_request' => $this->request, 'messageManager' => $this->messageManager ] ); } /** * Test for method execute. * * @return void */ public function testExecute() { $redirect = $this->getMockBuilder(\Magento\Framework\Controller\Result\Redirect::class) ->disableOriginalConstructor() ->getMock(); $path = '*/*/'; $this->formKeyValidator->expects($this->once())->method('validate')->with($this->request)->willReturn(false); $this->messageManager->expects($this->once())->method('addErrorMessage'); $this->resultRedirectFactory->expects($this->once())->method('create')->willReturn($redirect); $redirect->expects($this->once())->method('setPath')->with($path)->willReturnSelf(); $this->assertEquals($redirect, $this->cartAdd->execute()); } }