37 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
<?php
 | 
						|
/**
 | 
						|
 * Test block names exists
 | 
						|
 *
 | 
						|
 * Copyright © Magento, Inc. All rights reserved.
 | 
						|
 * See COPYING.txt for license details.
 | 
						|
 */
 | 
						|
 | 
						|
namespace Magento\Test\Integrity\Layout;
 | 
						|
 | 
						|
class BlockNamesTest extends \PHPUnit\Framework\TestCase
 | 
						|
{
 | 
						|
    public function testBlocksHasName()
 | 
						|
    {
 | 
						|
        $invoker = new \Magento\Framework\App\Utility\AggregateInvoker($this);
 | 
						|
        $invoker(
 | 
						|
            /**
 | 
						|
             * Test validate that blocks without name doesn't exist in layout file
 | 
						|
             *
 | 
						|
             * @param string $layoutFile
 | 
						|
             */
 | 
						|
            function ($layoutFile) {
 | 
						|
                $dom = new \DOMDocument();
 | 
						|
                $dom->load($layoutFile);
 | 
						|
                $xpath = new \DOMXpath($dom);
 | 
						|
                $count = $xpath->query('//block[not(@name)]')->length;
 | 
						|
 | 
						|
                if ($count) {
 | 
						|
                    $this->fail('Following file contains ' . $count . ' blocks without name. ' .
 | 
						|
                        'File Path:' . "\n" . $layoutFile);
 | 
						|
                }
 | 
						|
            },
 | 
						|
            \Magento\Framework\App\Utility\Files::init()->getLayoutFiles()
 | 
						|
        );
 | 
						|
    }
 | 
						|
}
 |