![]() 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/Code/Test/Unit/Validator/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Framework\Code\Test\Unit\Validator; use PHPUnit\Framework\TestCase; use Magento\Framework\Code\Validator\ArgumentSequence; use Magento\Framework\Exception\ValidatorException; require_once '_files/ClassesForArgumentSequence.php'; class ArgumentSequenceTest extends TestCase { /** * @var ArgumentSequence */ protected $_validator; /** * @var string */ protected $_fixturePath; protected function setUp(): void { $path = realpath(__DIR__) . '/_files/ClassesForArgumentSequence.php'; $this->_fixturePath = str_replace('\\', '/', $path); $this->_validator = new ArgumentSequence(); /** Build internal cache */ $this->_validator->validate('\ArgumentSequence\ParentClass'); } public function testValidSequence() { $this->assertTrue($this->_validator->validate('\ArgumentSequence\ValidChildClass')); } public function testInvalidSequence() { $expectedSequence = '$contextObject, $parentRequiredObject, $parentRequiredScalar, ' . '$childRequiredObject, $childRequiredScalar, $parentOptionalObject, $data, $parentOptionalScalar, ' . '$childOptionalObject, $childOptionalScalar'; $actualSequence = '$contextObject, $childRequiredObject, $parentRequiredObject, $parentRequiredScalar, ' . '$childRequiredScalar, $parentOptionalObject, $data, $parentOptionalScalar, ' . '$childOptionalObject, $childOptionalScalar'; $message = 'Incorrect argument sequence in class %s in ' . $this->_fixturePath . PHP_EOL . 'Required: %s' . PHP_EOL . 'Actual : %s' . PHP_EOL; $message = sprintf($message, '\ArgumentSequence\InvalidChildClass', $expectedSequence, $actualSequence); $this->expectException(ValidatorException::class); $this->expectExceptionMessage($message); $this->_validator->validate('\ArgumentSequence\InvalidChildClass'); } }