![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/medad.corals.io/vendor/orchestra/testbench-core/src/Console/ |
<?php namespace Orchestra\Testbench\Console; use Dotenv\Dotenv; use Dotenv\Loader\Loader; use Dotenv\Parser\Parser; use Dotenv\Store\StringStore; use Illuminate\Contracts\Console\Kernel as ConsoleKernel; use Illuminate\Support\Env; use Orchestra\Testbench\Concerns\CreatesApplication; use Symfony\Component\Console\Input\ArgvInput; use Symfony\Component\Console\Output\ConsoleOutput; class Commander { use CreatesApplication { resolveApplication as protected resolveApplicationFromTrait; getBasePath as protected getBasePathFromTrait; } /** * Application instance. * * @var \Illuminate\Foundation\Application */ protected $app; /** * List of configurations. * * @var array */ protected $config = []; /** * Working path. * * @var string|null */ protected $workingPath; /** * Construct a new Commander. * * @param array $config * @param string|null $workingPath */ public function __construct(array $config = [], ?string $workingPath) { $this->config = $config; $this->workingPath = $workingPath; } /** * Handle the command. * * @return void */ public function handle() { $laravel = $this->createApplication(); $kernel = $laravel->make(ConsoleKernel::class); $status = $kernel->handle( $input = new ArgvInput(), new ConsoleOutput() ); $kernel->terminate($input, $status); exit($status); } /** * Get package providers. * * @param \Illuminate\Foundation\Application $app * * @return array */ protected function getPackageProviders($app) { return $this->config['providers'] ?? []; } /** * Resolve application implementation. * * @return \Illuminate\Foundation\Application */ protected function resolveApplication() { return \tap($this->resolveApplicationFromTrait(), function () { $this->createDotenv(); }); } /** * Create a Dotenv instance. */ protected function createDotenv() { (new Dotenv( new StringStore(\implode("\n", $this->config['env'] ?? [])), new Parser(), new Loader(), Env::getRepository() ))->load(); } /** * Get base path. * * @return string */ protected function getBasePath() { $laravelBasePath = $this->config['laravel'] ?? null; if (! is_null($laravelBasePath)) { return \str_replace('./', $this->workingPath.'/', $laravelBasePath); } return $this->getBasePathFromTrait(); } /** * Define environment setup. * * @param \Illuminate\Foundation\Application $app * * @return void */ protected function getEnvironmentSetUp($app) { // } }