31 private $parametersHolder;
36 private $deploymentConfig;
49 $this->testEnv = $testEnv;
61 $this->testEnv->addModuleFiles($moduleName);
73 $initParams = $this->parametersHolder->getInitParams();
74 $enableModuleCommand =
'php -f ' .
BP .
'/bin/magento module:enable ' . $moduleName
75 .
' -n -vvv --magento-init-params="' . $initParams[
'magento-init-params'] .
'"';
76 return $this->shell->execute($enableModuleCommand);
85 public function upgrade($installParams = [])
87 $initParams = $this->parametersHolder->getInitParams();
88 $upgradeCommand =
'php -f ' .
BP .
'/bin/magento setup:upgrade -vvv -n --magento-init-params="' 89 . $initParams[
'magento-init-params'] .
'"';
90 $installParams = $this->toCliArguments($installParams);
91 $upgradeCommand .=
' ' . implode(
" ", array_keys($installParams));
93 return $this->shell->execute($upgradeCommand, array_values($installParams));
104 $initParams = $this->parametersHolder->getInitParams();
105 $disableModuleCommand =
'php -f ' .
BP .
'/bin/magento module:disable '. $moduleName
106 .
' -vvv --magento-init-params="' . $initParams[
'magento-init-params'] .
'"';
107 return $this->shell->execute($disableModuleCommand);
117 $initParams = $this->parametersHolder->getInitParams();
118 $installParams = $this->toCliArguments(
119 $this->parametersHolder->getDbData(
'checkout')
121 $command =
'php -f ' .
BP .
'/bin/magento setup:db-schema:split-quote ' .
122 implode(
" ", array_keys($installParams)) .
123 ' -vvv --magento-init-params="' .
124 $initParams[
'magento-init-params'] .
'"';
126 $this->shell->execute($command, array_values($installParams));
136 $initParams = $this->parametersHolder->getInitParams();
137 $installParams = $this->toCliArguments(
138 $this->parametersHolder->getDbData(
'sales')
140 $command =
'php -f ' .
BP .
'/bin/magento setup:db-schema:split-sales ' .
141 implode(
" ", array_keys($installParams)) .
142 ' -vvv --magento-init-params="' .
143 $initParams[
'magento-init-params'] .
'"';
145 $this->shell->execute($command, array_values($installParams));
153 $initParams = $this->parametersHolder->getInitParams();
154 $command =
'php -f ' .
BP .
'/bin/magento cache:clean ' .
155 ' -vvv --magento-init-params=' .
156 $initParams[
'magento-init-params'];
158 $this->shell->execute($command);
168 $initParams = $this->parametersHolder->getInitParams();
169 $command =
'php -f ' .
BP .
'/bin/magento module:uninstall ' . $moduleName .
' --remove-data ' .
170 ' -vvv --non-composer --magento-init-params="' .
171 $initParams[
'magento-init-params'] .
'"';
173 $this->shell->execute($command);
182 private function toCliArguments(array
$params)
203 public function install(array $modules, array $installParams = [])
205 if (empty($modules)) {
206 throw new \Exception(
"Cannot install Magento without modules");
209 $params = $this->parametersHolder->getInitParams();
214 $installParams = $this->toCliArguments(
217 $this->parametersHolder->getDbData(
'default'),
222 $exitCode = $this->shell->execute(
223 PHP_BINARY .
' -f %s setup:install -vvv ' . implode(
' ', array_keys($installParams)),
224 array_merge([
BP .
'/bin/magento'], array_values($installParams))
240 ->get(DeploymentConfig::class);
241 $this->deploymentConfig->resetData();
upgrade($installParams=[])
enableModule($moduleName)
introduceModule($moduleName)
const INPUT_KEY_DISABLE_MODULES
install(array $modules, array $installParams=[])
disableModule($moduleName)
__construct(\Magento\TestFramework\Deploy\TestModuleManager $testEnv)
const INPUT_KEY_ENABLE_MODULES
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
uninstallModule($moduleName)
static getObjectManager()