![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-eav/Test/Unit/Model/Entity/Attribute/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Eav\Test\Unit\Model\Entity\Attribute; use Magento\Eav\Model\Entity\Attribute; use Magento\Eav\Model\Entity\Attribute\Config; use Magento\Eav\Model\Entity\Attribute\Config\Reader; use Magento\Eav\Model\Entity\Type; use Magento\Framework\Serialize\SerializerInterface; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * Test class for \Magento\Eav\Model\Entity\Attribute\Config * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class ConfigTest extends TestCase { /** * @var Config */ protected $_model; /** * @var MockObject */ protected $_readerMock; /** * @var MockObject */ protected $_cacheMock; /** * @var MockObject */ protected $_cacheId; /** * @var Attribute|MockObject */ protected $_attribute; /** * @var MockObject */ protected $_entityType; protected function setUp(): void { $this->_attribute = $this->createMock(Attribute::class); $this->_entityType = $this->createMock(Type::class); $this->_readerMock = $this->createMock(Reader::class); $this->_cacheMock = $this->createMock(\Magento\Framework\App\Cache\Type\Config::class); $this->_cacheId = 'eav_attributes'; $this->_cacheMock->expects($this->once()) ->method('load') ->with($this->_cacheId) ->willReturn(''); $serializerMock = $this->getMockForAbstractClass(SerializerInterface::class); $serializerMock->method('unserialize') ->willReturn([]); $this->_model = new Config( $this->_readerMock, $this->_cacheMock, $this->_cacheId, $serializerMock ); } public function testGetLockedFieldsEmpty() { $this->_entityType->expects($this->once())->method('getEntityTypeCode')->willReturn('test_code'); $this->_attribute->expects( $this->once() )->method( 'getEntityType' )->willReturn( $this->_entityType ); $this->_attribute->expects( $this->once() )->method( 'getAttributeCode' )->willReturn( 'attribute_code' ); $result = $this->_model->getLockedFields($this->_attribute); $this->assertEquals([], $result); } public function testGetLockedFields() { $this->_entityType->expects( $this->once() )->method( 'getEntityTypeCode' )->willReturn( 'test_code1/test_code2' ); $this->_attribute->expects( $this->once() )->method( 'getEntityType' )->willReturn( $this->_entityType ); $this->_attribute->expects($this->once())->method('getAttributeCode')->willReturn('test_code'); $data = [ 'test_code1' => [ 'test_code2' => ['attributes' => ['test_code' => ['test_code1' => 'test_code1']]], ], ]; $this->_model->merge($data); $result = $this->_model->getLockedFields($this->_attribute); $this->assertEquals(['test_code1' => 'test_code1'], $result); } public function testGetEntityAttributesLockedFields() { $data = [ 'entity_code' => [ 'attributes' => [ 'attribute_code' => [ 'attribute_data' => ['locked' => 'locked_field', 'code' => 'code_test'], ], ], ], ]; $this->_model->merge($data); $result = $this->_model->getEntityAttributesLockedFields('entity_code'); $this->assertEquals(['attribute_code' => ['code_test']], $result); } }