b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / vendor / magento / framework / Shell / Test / Unit /
Filename/home/dev2.destoffenstraat.com/vendor/magento/framework/Shell/Test/Unit/ComplexParameterTest.php
Size2.06 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified07-Jan-2021 21:08
Last accessed23-Aug-2025 03:56
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);

namespace Magento\Framework\Shell\Test\Unit;

use Magento\Framework\Shell\ComplexParameter;
use PHPUnit\Framework\TestCase;

class ComplexParameterTest extends TestCase
{
public function testGetFromArray()
{
$object = new ComplexParameter('baz');
$this->assertSame([], $object->getFromArray(['--foo', '--bar']));
$this->assertSame([], $object->getFromArray(['--foo', '--bar', '--baz']));
$this->assertSame([1 => ''], $object->getFromArray(['--foo', '--bar', '--baz=1']));
}

/**
* @param string $str
* @param array $expected
* @dataProvider getFromStringDataProvider
*/
public function testGetFromString($str, $expected)
{
$object = new ComplexParameter('foo');
$this->assertSame($expected, $object->getFromString($str));
}

/**
* @return array
*/
public function getFromStringDataProvider()
{
return [
['--not-matching', []],
['--foo', []],
['--foo=', []],
['--foo=1', [1 => '']],
['--foo=bar=1&baz=2', ['bar' => '1', 'baz' => '2']],
['--foo=bar[1]=2&baz[3]=4', ['bar' => [1 => '2'], 'baz' => [3 => '4']]],
['--foo=bar[one]=value1&bar[two]=value2', ['bar' => ['one' => 'value1', 'two' => 'value2']]],
];
}

public function testPattern()
{
$object = new ComplexParameter('f', '/^-%s=(bar|baz)$/');
$this->assertSame([], $object->getFromString('-f=1'));
$this->assertSame(['bar' => ''], $object->getFromString('-f=bar'));
$this->assertSame(['baz' => ''], $object->getFromString('-f=baz'));
}

public function testMergeFromArgv()
{
$object = new ComplexParameter('foo');
$server = ['argv' => ['--foo=bar=value1', '--nonfoo=value2']];
$into = ['baz' => 'value3'];
$this->assertSame(['baz' => 'value3', 'bar' => 'value1'], $object->mergeFromArgv($server, $into));
}
}