vendor and env first commit
This commit is contained in:
@@ -0,0 +1,151 @@
|
||||
<?php
|
||||
|
||||
namespace Illuminate\Process;
|
||||
|
||||
use Illuminate\Contracts\Process\ProcessResult as ProcessResultContract;
|
||||
use Illuminate\Process\Exceptions\ProcessFailedException;
|
||||
use Symfony\Component\Process\Process;
|
||||
|
||||
class ProcessResult implements ProcessResultContract
|
||||
{
|
||||
/**
|
||||
* The underlying process instance.
|
||||
*
|
||||
* @var \Symfony\Component\Process\Process
|
||||
*/
|
||||
protected $process;
|
||||
|
||||
/**
|
||||
* Create a new process result instance.
|
||||
*
|
||||
* @param \Symfony\Component\Process\Process $process
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Process $process)
|
||||
{
|
||||
$this->process = $process;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the original command executed by the process.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function command()
|
||||
{
|
||||
return $this->process->getCommandLine();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the process was successful.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function successful()
|
||||
{
|
||||
return $this->process->isSuccessful();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the process failed.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function failed()
|
||||
{
|
||||
return ! $this->successful();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the exit code of the process.
|
||||
*
|
||||
* @return int|null
|
||||
*/
|
||||
public function exitCode()
|
||||
{
|
||||
return $this->process->getExitCode();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the standard output of the process.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function output()
|
||||
{
|
||||
return $this->process->getOutput();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the output contains the given string.
|
||||
*
|
||||
* @param string $output
|
||||
* @return bool
|
||||
*/
|
||||
public function seeInOutput(string $output)
|
||||
{
|
||||
return str_contains($this->output(), $output);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the error output of the process.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function errorOutput()
|
||||
{
|
||||
return $this->process->getErrorOutput();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the error output contains the given string.
|
||||
*
|
||||
* @param string $output
|
||||
* @return bool
|
||||
*/
|
||||
public function seeInErrorOutput(string $output)
|
||||
{
|
||||
return str_contains($this->errorOutput(), $output);
|
||||
}
|
||||
|
||||
/**
|
||||
* Throw an exception if the process failed.
|
||||
*
|
||||
* @param callable|null $callback
|
||||
* @return $this
|
||||
*
|
||||
* @throws \Illuminate\Process\Exceptions\ProcessFailedException
|
||||
*/
|
||||
public function throw(?callable $callback = null)
|
||||
{
|
||||
if ($this->successful()) {
|
||||
return $this;
|
||||
}
|
||||
|
||||
$exception = new ProcessFailedException($this);
|
||||
|
||||
if ($callback) {
|
||||
$callback($this, $exception);
|
||||
}
|
||||
|
||||
throw $exception;
|
||||
}
|
||||
|
||||
/**
|
||||
* Throw an exception if the process failed and the given condition is true.
|
||||
*
|
||||
* @param bool $condition
|
||||
* @param callable|null $callback
|
||||
* @return $this
|
||||
*
|
||||
* @throws \Throwable
|
||||
*/
|
||||
public function throwIf(bool $condition, ?callable $callback = null)
|
||||
{
|
||||
if ($condition) {
|
||||
return $this->throw($callback);
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user