magento2-docker/dev/tests/integration/testsuite/Magento/Framework/Config/ConverterTest.php

87 lines
2.1 KiB
PHP
Executable File

<?php declare(strict_types=1);
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Framework\Config;
/**
* Tests Magento\Framework\Config\Convert
*/
class ConverterTest extends \PHPUnit\Framework\TestCase
{
/**
* @var Converter
*/
private $converter;
/**
* Tests config value "false" is not interpreted as true.
*
* @param string $sourceString
* @param array $expected
* @dataProvider parseVarElementDataProvider
*/
public function testParseVarElement($sourceString, $expected)
{
$document = new \DOMDocument();
$document->loadXML($sourceString);
$actual = $this->converter->convert($document);
self::assertEquals(
$expected,
$actual
);
}
/**
* Data provider for testParseVarElement.
*
* @return array
*/
public function parseVarElementDataProvider()
{
$sourceString = <<<'XML'
<?xml version="1.0"?>
<view xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/view.xsd">
<vars module="Magento_Test">
<var name="str">some string</var>
<var name="int-1">1</var>
<var name="int-0">0</var>
<var name="bool-true">true</var>
<var name="bool-false">false</var>
</vars>
</view>
XML;
$expectedResult = [
'vars' => [
'Magento_Test' => [
'str' => 'some string',
'int-1' => '1',
'int-0' => '0',
'bool-true' => true,
'bool-false' => false
]
]
];
return [
[
$sourceString,
$expectedResult
],
];
}
/**
* @inheritdoc
*/
protected function setUp(): void
{
$this->converter = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
->create(\Magento\Framework\Config\Converter::class);
}
}