public function testGetList()
 {
     $productSku = "configurable";
     $this->productMock->expects(self::once())->method('getTypeId')->willReturn(Configurable::TYPE_CODE);
     $this->productRepositoryMock->expects(self::once())->method('get')->with($productSku)->willReturn($this->productMock);
     $optionMock = $this->getMock(OptionInterface::class);
     $this->optionLoader->expects(self::once())->method('load')->with($this->productMock)->willReturn([$optionMock]);
     $this->assertEquals([$optionMock], $this->model->getList($productSku));
 }
Пример #2
0
 /**
  * @covers \Magento\ConfigurableProduct\Model\Product\ReadHandler::execute
  */
 public function testExecute()
 {
     $options = [['value_index' => 12], ['value_index' => 13]];
     $entityId = 1;
     $ids = [1, 2, 3];
     $product = $this->getMockBuilder(Product::class)->disableOriginalConstructor()->setMethods(['getTypeId', 'getId', 'getExtensionAttributes', 'setExtensionAttributes', 'getTypeInstance'])->getMock();
     $product->expects(static::once())->method('getTypeId')->willReturn(Configurable::TYPE_CODE);
     $extensionAttributes = $this->getMockBuilder(ProductExtensionAttributes::class)->disableOriginalConstructor()->setMethods(['setConfigurableProductOptions', 'setConfigurableProductLinks'])->getMockForAbstractClass();
     $product->expects(static::once())->method('getExtensionAttributes')->willReturn($extensionAttributes);
     $this->optionLoader->expects(static::once())->method('load')->with($product)->willReturn($options);
     $typeInstance = $this->getMockBuilder(Configurable::class)->disableOriginalConstructor()->setMethods(['getChildrenIds'])->getMock();
     $product->expects(static::once())->method('getTypeInstance')->willReturn($typeInstance);
     $product->expects(static::once())->method('getId')->willReturn($entityId);
     $typeInstance->expects(static::once())->method('getChildrenIds')->willReturn($ids);
     $product->expects(static::once())->method('setExtensionAttributes')->with($extensionAttributes);
     $entity = $this->readHandler->execute('Entity', $product);
     static::assertSame($product, $entity);
 }