/** * Test applyTy method of builder * * ApplyTo method transform string to array * * @dataProvider applyToDataProvider() * * @param $applyTo */ public function testApplyTo($applyTo) { $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this); /** @var \Magento\Catalog\Service\V1\Data\Eav\OptionBuilder $optionBuilder */ $optionBuilder = $objectManager->getObject('Magento\\Catalog\\Service\\V1\\Data\\Eav\\OptionBuilder'); /** @var \Magento\Catalog\Service\V1\Data\Eav\ValidationRuleBuilder $validationRuleBuilder */ $validationRuleBuilder = $objectManager->getObject('Magento\\Catalog\\Service\\V1\\Data\\Eav\\ValidationRuleBuilder'); $frontendLabelBuilder = $objectManager->getObject('Magento\\Catalog\\Service\\V1\\Data\\Eav\\Product\\Attribute\\FrontendLabelBuilder'); $attributeBuilder = $objectManager->getObject('Magento\\Catalog\\Service\\V1\\Data\\Eav\\AttributeMetadataBuilder', ['optionBuilder' => $optionBuilder, 'validationRuleBuilder' => $validationRuleBuilder, 'frontendLabelBuilder' => $frontendLabelBuilder]); $attributeBuilder->populateWithArray([AttributeMetadata::APPLY_TO => $applyTo]); $attributeMetadata = new AttributeMetadata($attributeBuilder); $this->assertTrue(is_array($attributeMetadata->getApplyTo())); $this->assertEquals(3, count($attributeMetadata->getApplyTo())); $attributeBuilder->setApplyTo($applyTo); $attributeMetadata = new AttributeMetadata($attributeBuilder); $this->assertTrue(is_array($attributeMetadata->getApplyTo())); $this->assertEquals(3, count($attributeMetadata->getApplyTo())); }