/** * Test for method buildIdWithPrefix * * @param string $prefix * @param null|false|int $saleableId * @param null|false|string $suffix * @param string $expectedResult * @dataProvider buildIdWithPrefixDataProvider */ public function testBuildIdWithPrefix($prefix, $saleableId, $suffix, $expectedResult) { /** @var \Magento\Framework\Pricing\Render\Amount $amountRender */ $amountRender = $this->getMockBuilder('Magento\\Framework\\Pricing\\Render\\Amount')->disableOriginalConstructor()->setMethods(['getSaleableItem'])->getMock(); /** @var \Magento\Catalog\Model\Product $saleable */ $saleable = $this->getMockBuilder('Magento\\Catalog\\Model\\Product')->disableOriginalConstructor()->setMethods(['getId', '__wakeup'])->getMock(); $amountRender->expects($this->any())->method('getSaleableItem')->will($this->returnValue($saleable)); $saleable->expects($this->any())->method('getId')->will($this->returnValue($saleableId)); $this->model->setIdSuffix($suffix); $this->model->render($amountRender); $result = $this->model->buildIdWithPrefix($prefix); $this->assertEquals($expectedResult, $result); }