public function testGetAddToCartPostParams() { $url = 'http://localhost.com/dev/'; $id = 1; $uenc = strtr(base64_encode($url), '+/=', '-_,'); $expectedPostData = ['action' => $url, 'data' => ['product' => $id, 'uenc' => $uenc]]; $this->typeInstanceMock->expects($this->once())->method('hasRequiredOptions')->with($this->equalTo($this->productMock))->will($this->returnValue(false)); $this->cartHelperMock->expects($this->any())->method('getAddUrl')->with($this->equalTo($this->productMock), $this->equalTo([]))->will($this->returnValue($url)); $this->productMock->expects($this->once())->method('getEntityId')->will($this->returnValue($id)); $this->productMock->expects($this->once())->method('getTypeInstance')->will($this->returnValue($this->typeInstanceMock)); $this->urlHelperMock->expects($this->once())->method('getEncodedUrl')->with($this->equalTo($url))->will($this->returnValue($uenc)); $result = $this->block->getAddToCartPostParams($this->productMock); $this->assertEquals($expectedPostData, $result); }
public function testGetAddToCartPostParams() { $url = 'http://localhost.com/dev/'; $id = 1; $uenc = strtr(base64_encode($url), '+/=', '-_,'); $data = array('product' => $id, \Magento\Framework\App\Action\Action::PARAM_NAME_URL_ENCODED => $uenc); $expectedPostData = json_encode(array('action' => $url, 'data' => array('product' => $id, 'uenc' => $uenc))); $this->typeInstanceMock->expects($this->once())->method('hasRequiredOptions')->with($this->equalTo($this->productMock))->will($this->returnValue(false)); $this->cartHelperMock->expects($this->any())->method('getAddUrl')->with($this->equalTo($this->productMock), $this->equalTo(array()))->will($this->returnValue($url)); $this->productMock->expects($this->once())->method('getEntityId')->will($this->returnValue($id)); $this->productMock->expects($this->once())->method('getTypeInstance')->will($this->returnValue($this->typeInstanceMock)); $this->postDataHelperMock->expects($this->once())->method('getEncodedUrl')->with($this->equalTo($url))->will($this->returnValue($uenc)); $this->postDataHelperMock->expects($this->once())->method('getPostData')->with($this->equalTo($url), $this->equalTo($data))->will($this->returnValue($expectedPostData)); $result = $this->block->getAddToCartPostParams($this->productMock); $this->assertEquals($expectedPostData, $result); }
/** * {@inheritdoc} */ public function getAddToCartPostParams(\Magento\Catalog\Model\Product $product) { $pluginInfo = $this->pluginList->getNext($this->subjectType, 'getAddToCartPostParams'); if (!$pluginInfo) { return parent::getAddToCartPostParams($product); } else { return $this->___callPlugins('getAddToCartPostParams', func_get_args(), $pluginInfo); } }