12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Eav\Model;
- class AttributeManagementTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var \Magento\Eav\Api\AttributeManagementInterface
- */
- private $model;
- /**
- * @var \Magento\Framework\ObjectManagerInterface
- */
- private $objectManager;
- protected function setUp()
- {
- $this->objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
- $this->model = $this->objectManager->create(\Magento\Eav\Api\AttributeManagementInterface::class);
- }
- /**
- * Verify that collection in service used correctly
- */
- public function testGetList()
- {
- $productAttributeSetId = $this->getAttributeSetId(
- \Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE
- );
- $productAttributes = $this->model->getAttributes(
- \Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE,
- $productAttributeSetId
- );
- // Verify that result contains only product attributes
- $this->verifyAttributeSetIds($productAttributes, $productAttributeSetId);
- $categoryAttributeSetId = $this->getAttributeSetId(
- \Magento\Catalog\Api\Data\CategoryAttributeInterface::ENTITY_TYPE_CODE
- );
- $categoryAttributes = $this->model->getAttributes(
- \Magento\Catalog\Api\Data\CategoryAttributeInterface::ENTITY_TYPE_CODE,
- $categoryAttributeSetId
- );
- // Verify that result contains only category attributes
- $this->verifyAttributeSetIds($categoryAttributes, $categoryAttributeSetId);
- }
- /**
- * @param string $entityTypeCode
- * @return int
- */
- private function getAttributeSetId($entityTypeCode)
- {
- /** @var \Magento\Eav\Model\Config $eavConfig */
- $eavConfig = $this->objectManager->create(\Magento\Eav\Model\Config::class);
- return $eavConfig->getEntityType($entityTypeCode)->getDefaultAttributeSetId();
- }
- /**
- * @param array $items
- * @param string $attributeSetId
- * @return void
- */
- private function verifyAttributeSetIds(array $items, $attributeSetId)
- {
- /** @var \Magento\Eav\Model\Entity\Attribute\AbstractAttribute $item */
- foreach ($items as $item) {
- $this->assertEquals($attributeSetId, $item->getAttributeSetId());
- }
- }
- }
|