47 lines
1.5 KiB
PHP
Executable File
47 lines
1.5 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Test configuration of Online Shipping carriers
|
|
*
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Test\Integrity\Modular;
|
|
|
|
use Magento\Framework\Module\Dir;
|
|
|
|
class CarrierConfigFilesTest extends \PHPUnit\Framework\TestCase
|
|
{
|
|
/**
|
|
* @var \Magento\Config\Model\Config\Structure\Reader
|
|
*/
|
|
protected $_reader;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
$urnResolver = new \Magento\Framework\Config\Dom\UrnResolver();
|
|
$schemaFile = $urnResolver->getRealPath('urn:magento:module:Magento_Config:etc/system.xsd');
|
|
$this->_reader = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
|
|
\Magento\Config\Model\Config\Structure\Reader::class,
|
|
['perFileSchema' => $schemaFile, 'isValidated' => true]
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Tests that all source_models used in shipping are valid
|
|
*/
|
|
public function testValidateShippingSourceModels()
|
|
{
|
|
$config = $this->_reader->read('adminhtml');
|
|
|
|
$carriers = $config['config']['system']['sections']['carriers']['children'];
|
|
foreach ($carriers as $carrier) {
|
|
foreach ($carrier['children'] as $field) {
|
|
if (isset($field['source_model'])) {
|
|
$model = $field['source_model'];
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create($model);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|