Exemplo n.º 1
0
 public function testLayouts()
 {
     $invoker = new \Magento\TestFramework\Utility\AggregateInvoker($this);
     $invoker(function ($path) {
         $xml = simplexml_load_file($path);
         $classes = \Magento\TestFramework\Utility\Classes::collectLayoutClasses($xml);
         foreach (\Magento\TestFramework\Utility\Classes::getXmlAttributeValues($xml, '/layout//@helper', 'helper') as $class) {
             $classes[] = \Magento\TestFramework\Utility\Classes::getCallbackClass($class);
         }
         $classes = array_merge($classes, \Magento\TestFramework\Utility\Classes::getXmlAttributeValues($xml, '/layout//@module', 'module'));
         $this->_assertNonFactoryName(array_unique($classes), $path);
         $tabs = \Magento\TestFramework\Utility\Classes::getXmlNodeValues($xml, '/layout//action[@method="addTab"]/block');
         $this->_assertNonFactoryName(array_unique($tabs), $path, true);
     }, \Magento\TestFramework\Utility\Files::init()->getLayoutFiles());
 }
Exemplo n.º 2
0
        addReplace($factoryName, $module, $name, '::getSingleton(\'%s\'', '_Model_', $search, $replace);
        addReplace($factoryName, $module, $name, '::getResourceModel(\'%s\'', '_Model_Resource_', $search, $replace);
        addReplace($factoryName, $module, $name, "::getResourceSingleton('%s'", '_Model_Resource_', $search, $replace);
        addReplace($factoryName, $module, $name, 'addBlock(\'%s\'', '_Block_', $search, $replace);
        addReplace($factoryName, $module, $name, 'createBlock(\'%s\'', '_Block_', $search, $replace);
        addReplace($factoryName, $module, $name, 'getBlockClassName(\'%s\'', '_Block_', $search, $replace);
        addReplace($factoryName, $module, $name, 'getBlockSingleton(\'%s\'', '_Block_', $search, $replace);
        addReplace($factoryName, $module, $name, 'helper(\'%s\'', '_Helper_', $search, $replace);
    }
    replaceAndOutput($file, $search, $replace, $factoryNames);
}
// layouts
$layouts = \Magento\TestFramework\Utility\Files::init()->getLayoutFiles(array(), false);
foreach ($layouts as $file) {
    $xml = simplexml_load_file($file);
    $classes = \Magento\TestFramework\Utility\Classes::collectLayoutClasses($xml);
    $factoryNames = array_filter($classes, 'isFactoryName');
    if (!$factoryNames) {
        continue;
    }
    $search = array();
    $replace = array();
    foreach ($factoryNames as $factoryName) {
        list($module, $name) = getModuleName($factoryName);
        addReplace($factoryName, $module, $name, 'type="%s"', '_Block_', $search, $replace);
    }
    replaceAndOutput($file, $search, $replace, $factoryNames);
}
// modules in configuration and layouts
$configs = \Magento\TestFramework\Utility\Files::init()->getConfigFiles('*.xml', array('wsdl.xml', 'wsdl2.xml', 'wsi.xml'), false);
foreach (array_merge($layouts, $configs) as $file) {
Exemplo n.º 3
0
 public function testLayoutFiles()
 {
     $invoker = new \Magento\TestFramework\Utility\AggregateInvoker($this);
     $invoker(function ($path) {
         $xml = simplexml_load_file($path);
         $classes = \Magento\TestFramework\Utility\Classes::getXmlNodeValues($xml, '/layout//*[contains(text(), "\\\\Block\\\\") or contains(text(),
                     "\\\\Model\\\\") or contains(text(), "\\\\Helper\\\\")]');
         foreach (\Magento\TestFramework\Utility\Classes::getXmlAttributeValues($xml, '/layout//@helper', 'helper') as $class) {
             $classes[] = \Magento\TestFramework\Utility\Classes::getCallbackClass($class);
         }
         foreach (\Magento\TestFramework\Utility\Classes::getXmlAttributeValues($xml, '/layout//@module', 'module') as $module) {
             $classes[] = str_replace('_', '\\', "{$module}_Helper_Data");
         }
         $classes = array_merge($classes, \Magento\TestFramework\Utility\Classes::collectLayoutClasses($xml));
         $this->_assertClassesExist(array_unique($classes), $path);
     }, \Magento\TestFramework\Utility\Files::init()->getLayoutFiles());
 }