function ExecTrait::mustExec
Same name in other branches
- 9 core/tests/Drupal/Tests/Composer/Plugin/Scaffold/ExecTrait.php \Drupal\Tests\Composer\Plugin\Scaffold\ExecTrait::mustExec()
- 10 core/tests/Drupal/Tests/Composer/Plugin/Scaffold/ExecTrait.php \Drupal\Tests\Composer\Plugin\Scaffold\ExecTrait::mustExec()
- 11.x core/tests/Drupal/Tests/Composer/Plugin/Scaffold/ExecTrait.php \Drupal\Tests\Composer\Plugin\Scaffold\ExecTrait::mustExec()
Runs an arbitrary command.
Parameters
string $cmd: The command to execute (escaped as required)
string $cwd: The current working directory to run the command from.
array $env: Environment variables to define for the subprocess.
Return value
string Standard output from the command
6 calls to ExecTrait::mustExec()
- ComposerHookTest::testComposerHooks in core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ Functional/ ComposerHookTest.php - Test to see if scaffold operation runs at the correct times.
- ComposerHookTest::testScaffoldMessagesDoNotPrintTwice in core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ Functional/ ComposerHookTest.php - Test to see if scaffold messages are omitted when running scaffold twice.
- ManageGitIgnoreTest::createSutWithGit in core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ Functional/ ManageGitIgnoreTest.php - Creates a system-under-test and initialize a git repository for it.
- ManageGitIgnoreTest::testManageGitIgnore in core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ Functional/ ManageGitIgnoreTest.php - Tests scaffold command correctly manages the .gitignore file.
- ScaffoldUpgradeTest::createTmpRepo in core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ Functional/ ScaffoldUpgradeTest.php - Copy the provided source directory and create a temporary git repository.
File
-
core/
tests/ Drupal/ Tests/ Composer/ Plugin/ Scaffold/ ExecTrait.php, line 25
Class
- ExecTrait
- Convenience class for creating fixtures.
Namespace
Drupal\Tests\Composer\Plugin\ScaffoldCode
protected function mustExec($cmd, $cwd, array $env = []) {
$process = new Process($cmd, $cwd, $env + [
'PATH' => getenv('PATH'),
'HOME' => getenv('HOME'),
]);
$process->inheritEnvironmentVariables();
$process->setTimeout(300)
->setIdleTimeout(300)
->run();
$exitCode = $process->getExitCode();
if (0 != $exitCode) {
throw new \RuntimeException("Exit code: {$exitCode}\n\n" . $process->getErrorOutput() . "\n\n" . $process->getOutput());
}
return $process->getOutput();
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.