Example #1
0
 public function testGetChildren()
 {
     $productId = 'sadasd';
     $product = $this->getMockBuilder('Magento\\Catalog\\Model\\Product')->disableOriginalConstructor()->getMock();
     $productTypeInstance = $this->getMockBuilder('Magento\\ConfigurableProduct\\Model\\Product\\Type\\Configurable')->disableOriginalConstructor()->getMock();
     $product->expects($this->any())->method('getTypeId')->will($this->returnValue(\Magento\ConfigurableProduct\Model\Product\Type\Configurable::TYPE_CODE));
     $product->expects($this->any())->method('getTypeInstance')->will($this->returnValue($productTypeInstance));
     $productTypeInstance->expects($this->once())->method('setStoreFilter')->with(null, $product);
     $childProduct = $this->getMockBuilder('Magento\\Catalog\\Model\\Product')->disableOriginalConstructor()->getMock();
     $productTypeInstance->expects($this->any())->method('getUsedProducts')->with($product)->will($this->returnValue([$childProduct]));
     $this->productRepository->expects($this->any())->method('get')->with($productId)->will($this->returnValue($product));
     $productDto = $this->getMockBuilder('Magento\\Catalog\\Service\\V1\\Data\\Product')->disableOriginalConstructor()->getMock();
     $this->productConverter->expects($this->any())->method('createProductDataFromModel')->with($childProduct)->will($this->returnValue($productDto));
     $products = $this->object->getChildren($productId);
     $this->assertCount(1, $products);
     $this->assertEquals($productDto, $products[0]);
 }