Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ThemeTest.php
Go to the documentation of this file.
1 <?php
7 
8 class ThemeTest extends \PHPUnit\Framework\TestCase
9 {
11  protected $urnResolver;
12 
14  protected $urnResolverMock;
15 
16  protected function setUp()
17  {
18  $this->urnResolver = new \Magento\Framework\Config\Dom\UrnResolver();
19  $this->urnResolverMock = $this->createMock(\Magento\Framework\Config\Dom\UrnResolver::class);
20  }
21 
22  public function testGetSchemaFile()
23  {
24  $config = new \Magento\Framework\Config\Theme($this->urnResolverMock, null);
25  $this->urnResolverMock->expects($this->exactly(2))
26  ->method('getRealPath')
27  ->with('urn:magento:framework:Config/etc/theme.xsd')
28  ->willReturn(
29  $this->urnResolver->getRealPath('urn:magento:framework:Config/etc/theme.xsd')
30  );
31  $this->assertEquals(
32  $this->urnResolver->getRealPath('urn:magento:framework:Config/etc/theme.xsd'),
33  $config->getSchemaFile()
34  );
35  $this->assertFileExists($config->getSchemaFile());
36  }
37 
43  public function testDataGetter($themePath, $expected)
44  {
45  $expected = reset($expected);
46  $config = new \Magento\Framework\Config\Theme(
47  $this->urnResolverMock,
48  file_get_contents(__DIR__ . '/_files/area/' . $themePath . '/theme.xml')
49  );
50  $this->assertSame($expected['media'], $config->getMedia());
51  $this->assertSame($expected['title'], $config->getThemeTitle());
52  $this->assertSame($expected['parent'], $config->getParentTheme());
53  }
54 
58  public function dataGetterDataProvider()
59  {
60  return [
61  [
62  'default_default',
63  [[
64  'media' => ['preview_image' => 'media/default_default.jpg'],
65  'title' => 'Default',
66  'parent' => null,
67  ]], ],
68  [
69  'default_test',
70  [[
71  'media' => ['preview_image' => ''],
72  'title' => 'Test',
73  'parent' => ['default_default'],
74  ]]],
75  [
76  'default_test2',
77  [[
78  'media' => ['preview_image' => ''],
79  'title' => 'Test2',
80  'parent' => ['default_test'],
81  ]]],
82  [
83  'test_default',
84  [[
85  'media' => ['preview_image' => 'media/test_default.jpg'],
86  'title' => 'Default',
87  'parent' => null,
88  ]]],
89  [
90  'test_external_package_descendant',
91  [[
92  'media' => ['preview_image' => ''],
93  'title' => 'Default',
94  'parent' => ['default_test2'],
95  ]]],
96  ];
97  }
98 }
$config
Definition: fraud_order.php:17
defined('TESTS_BP')||define('TESTS_BP' __DIR__
Definition: _bootstrap.php:60