Config.php 1.04 KB
Newer Older
Ketan's avatar
Ketan committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

namespace Magento\Mtf\Util\Command\Cli;

use Magento\Mtf\Util\Command\Cli;

/**
 * Handle set configuration for test execution.
 */
class Config extends Cli
{
    /**
     * Parameter for reindex command.
     */
    const PARAM_CONFIG_SET = 'config:set';

    /**
     * Set configuration.
     *
     * @param string $path
     * @param string $value
     * @param string|null $scope
     * @param string|null $scopeCode
     * @return void
     */
    public function setConfig($path, $value, $scope = null, $scopeCode = null)
    {
        $configurationString = '';

        if ($scope !== null) {
            $configurationString.= sprintf('--scope=%s ', $scope);
        }

        if ($scopeCode !== null) {
            $configurationString.= sprintf('--scope-code=%s ', $scopeCode);
        }
        $configurationString.= sprintf('%s %s', $path, $value);

        parent::execute(Config::PARAM_CONFIG_SET . ' ' . $configurationString);
    }
}