public function testExecuteException() { $result = '{}'; $quoteMock = $this->getQuoteMock(); $resultRedirectMock = $this->getResultRedirectMock(); $quoteMock->expects(self::once())->method('getItemsCount')->willReturn(1); $this->requestMock->expects(self::once())->method('getPostValue')->with('result', '{}')->willReturn($result); $this->checkoutSessionMock->expects(self::once())->method('getQuote')->willReturn($quoteMock); $this->quoteUpdaterMock->expects(self::never())->method('execute'); $this->messageManagerMock->expects(self::once())->method('addExceptionMessage')->with(self::isInstanceOf('\\InvalidArgumentException'), 'Data of request cannot be empty.'); $this->resultFactoryMock->expects(self::once())->method('create')->with(ResultFactory::TYPE_REDIRECT)->willReturn($resultRedirectMock); $resultRedirectMock->expects(self::once())->method('setPath')->with('checkout/cart')->willReturnSelf(); self::assertEquals($this->review->execute(), $resultRedirectMock); }