1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Test\Integrity\Modular;
- class AclConfigFilesTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * Configuration acl file list
- *
- * @var array
- */
- protected $_fileList = [];
- /**
- * Path to scheme file
- *
- * @var string
- */
- protected $_schemeFile;
- protected function setUp()
- {
- $urnResolver = new \Magento\Framework\Config\Dom\UrnResolver();
- $this->_schemeFile = $urnResolver->getRealPath('urn:magento:framework:Acl/etc/acl.xsd');
- }
- /**
- * Test each acl configuration file
- * @param string $file
- * @dataProvider aclConfigFileDataProvider
- */
- public function testAclConfigFile($file)
- {
- $validationStateMock = $this->createMock(\Magento\Framework\Config\ValidationStateInterface::class);
- $validationStateMock->method('isValidationRequired')
- ->willReturn(true);
- $domConfig = new \Magento\Framework\Config\Dom(file_get_contents($file), $validationStateMock);
- $result = $domConfig->validate($this->_schemeFile, $errors);
- $message = "Invalid XML-file: {$file}\n";
- foreach ($errors as $error) {
- $message .= "{$error}\n";
- }
- $this->assertTrue($result, $message);
- }
- /**
- * @return array
- */
- public function aclConfigFileDataProvider()
- {
- return \Magento\Framework\App\Utility\Files::init()->getConfigFiles('acl.xml');
- }
- }
|