![]() 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/framework/Reflection/Test/Unit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); // @codingStandardsIgnoreStart namespace Magento\Framework\Reflection\Test\Unit; use Laminas\Code\Reflection\ClassReflection; use Magento\Framework\Reflection\NameFinder; use PHPUnit\Framework\TestCase; /** * NameFinder Unit Test */ class NameFinderTest extends TestCase { /** @var NameFinder */ protected $nameFinder; /** * Set up helper. */ protected function setUp(): void { $this->nameFinder = new NameFinder(); } public function testGetSetterMethodName() { $class = new ClassReflection(DataObject::class); $setterName = $this->nameFinder->getSetterMethodName($class, 'AttrName'); $this->assertEquals("setAttrName", $setterName); $booleanSetterName = $this->nameFinder->getSetterMethodName($class, 'Active'); $this->assertEquals("setIsActive", $booleanSetterName); } /** * @codingStandardsIgnoreStart * @codingStandardsIgnoreEnd */ public function testGetSetterMethodNameInvalidAttribute() { $this->expectException('Exception'); $this->expectExceptionMessage( 'Property "InvalidAttribute" does not have accessor method "setInvalidAttribute" ' . 'in class "Magento\Framework\Reflection\Test\Unit\DataObject"' ); $class = new ClassReflection(DataObject::class); $this->nameFinder->getSetterMethodName($class, 'InvalidAttribute'); } /** * @codingStandardsIgnoreStart * @codingStandardsIgnoreEnd */ public function testGetSetterMethodNameWrongCamelCasedAttribute() { $this->expectException('Exception'); $this->expectExceptionMessage( 'Property "ActivE" does not have accessor method "setActivE" ' . 'in class "Magento\Framework\Reflection\Test\Unit\DataObject"' ); $class = new ClassReflection(DataObject::class); $this->nameFinder->getSetterMethodName($class, 'ActivE'); } public function testFindAccessorMethodName() { $this->expectException('LogicException'); $this->expectExceptionMessage( 'Property "Property" does not have accessor method "getProperty" in class "className".' ); $reflectionClass = $this->createMock(ClassReflection::class); $reflectionClass->expects($this->atLeastOnce())->method('hasMethod')->willReturn(false); $reflectionClass->expects($this->atLeastOnce())->method('getName')->willReturn('className'); $this->nameFinder->findAccessorMethodName( $reflectionClass, 'Property', 'getProperty', 'isProperty' ); } }