/** * @param string $commandFmt Git command to run in root git directory * @param string $args, ... [Optional] All arguments to git command * @return Shell\CommandResult */ public function getCommandResult($commandFmt) { $args = func_get_args(); // Swap arg param 0 (i.e. $commandFmt) for the "--git-dir" arg $args[0] = $this->dir; $command = Shell\Command::fromFmtAndArgs("git --git-dir=%s {$commandFmt}", $args); return $command->getResult(); }
public function testShellAliasMethod() { $shell = new Shell(); $cActual = $shell->command('echo %s %s %d', 'hello', 'world', 42); $safeActual = self::getSafeCommandFrom($cActual); $safeExpected = Command::makeSafeString('echo %s %s %d', array('hello', 'world', 42)); $this->assertEquals($safeExpected, $safeActual, 'safe commands'); }
public function testWithUnsafeEnvVariableArg() { $safeStr = Command::makeSafeString('echo %s', array('$variable')); $this->assertEquals("echo '\$variable'", $safeStr, 'safe command'); }
/** * @param string $gsql * @param string[] $args * @return ApiResult */ public function gsql($gsql, array $args) { $safeGsql = Command::makeSafeString($gsql, $args); return $this->send("gerrit gsql --format=JSON -c \"{$safeGsql}\""); }