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 / Config / Test / Unit / Converter / Dom /
Filename/home/dev2.destoffenstraat.com/vendor/magento/framework/Config/Test/Unit/Converter/Dom/FlatTest.php
Size2.05 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\Config\Test\Unit\Converter\Dom;

use Magento\Framework\Config\Converter\Dom\Flat;
use Magento\Framework\Config\Dom\ArrayNodeConfig;
use Magento\Framework\Config\Dom\NodePathMatcher;
use PHPUnit\Framework\TestCase;

class FlatTest extends TestCase
{
/**
* @var Flat
*/
protected $_model;

/**
* Path to fixtures
*
* @var string
*/
protected $_fixturePath;

protected function setUp(): void
{
$arrayNodeConfig = new ArrayNodeConfig(
new NodePathMatcher(),
[
'/root/multipleNode' => 'id',
'/root/wrongArray' => 'id',
],
[
'/root/node_one/subnode',
]
);
$this->_model = new Flat($arrayNodeConfig);
$this->_fixturePath = realpath(__DIR__ . '/../../') . '/_files/converter/dom/flat/';
}

public function testConvert()
{
$expected = require $this->_fixturePath . 'result.php';

$dom = new \DOMDocument();
$dom->load($this->_fixturePath . 'source.xml');

$actual = $this->_model->convert($dom);
$this->assertEquals($expected, $actual);
}

public function testConvertWithNotUnique()
{
$this->expectException('UnexpectedValueException');
$this->expectExceptionMessage(
'Node path \'/root/someOtherVal\' is not unique, but it has not been marked as array.'
);
$dom = new \DOMDocument();
$dom->load($this->_fixturePath . 'source_notuniq.xml');

$this->_model->convert($dom);
}

public function testConvertWrongArray()
{
$this->expectException('UnexpectedValueException');
$this->expectExceptionMessage('Array is expected to contain value for key \'id\'.');
$dom = new \DOMDocument();
$dom->load($this->_fixturePath . 'source_wrongarray.xml');

$this->_model->convert($dom);
}
}