<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Test\Integrity\Modular; class ViewConfigFilesTest extends \PHPUnit\Framework\TestCase { /** * @param string $file * @dataProvider viewConfigFileDataProvider */ public function testViewConfigFile($file) { $validationStateMock = $this->createMock(\Magento\Framework\Config\ValidationStateInterface::class); $validationStateMock->method('isValidationRequired') ->willReturn(true); $domConfig = new \Magento\Framework\Config\Dom($file, $validationStateMock); $urnResolver = new \Magento\Framework\Config\Dom\UrnResolver(); $result = $domConfig->validate( $urnResolver->getRealPath('urn:magento:framework:Config/etc/view.xsd'), $errors ); $message = "Invalid XML-file: {$file}\n"; foreach ($errors as $error) { $message .= "{$error->message} Line: {$error->line}\n"; } $this->assertTrue($result, $message); } /** * @return array */ public function viewConfigFileDataProvider() { $result = []; $files = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\Module\Dir\Reader::class )->getConfigurationFiles( 'view.xml' ); foreach ($files as $file) { $result[] = [$file]; } return $result; } }