public function testConsoleEnvironmentDetection() { $app = new Application(); $app['request'] = m::mock('Symfony\\Component\\HttpFoundation\\Request'); $app['request']->shouldReceive('getHost')->andReturn('foo'); $app['request']->server = m::mock('StdClass'); $app['request']->server->shouldReceive('get')->once()->with('argv')->andReturn(array('--env=local')); $app->detectEnvironment(array('local' => array('foobar'))); $this->assertEquals('local', $app['env']); }
/** * Creates the application. * * Needs to be implemented by subclasses. * * @return \Symfony\Component\HttpKernel\HttpKernelInterface */ public function createApplication() { $app = new Application(); $app->detectEnvironment(array('local' => array('your-machine-name'))); $app->bindInstallPaths($this->getApplicationPaths()); $app['env'] = 'testing'; $app->instance('app', $app); Facade::clearResolvedInstances(); Facade::setFacadeApplication($app); $app->registerCoreContainerAliases(); with($envVariables = new EnvironmentVariables($app->getEnvironmentVariablesLoader()))->load($app['env']); $app->instance('config', $config = new Repository($app->getConfigLoader(), $app['env'])); $app->startExceptionHandling(); date_default_timezone_set($this->getApplicationTimezone()); $aliases = array_merge($this->getApplicationAliases(), $this->getPackageAliases()); AliasLoader::getInstance($aliases)->register(); Request::enableHttpMethodParameterOverride(); $providers = array_merge($this->getApplicationProviders(), $this->getPackageProviders()); $app->getProviderRepository()->load($app, $providers); $this->registerBootedCallback($app); return $app; }
/** * Detect the application's current environment. * * @param \Closure $callback * @return string * @static */ public static function detectEnvironment($callback) { return \Illuminate\Foundation\Application::detectEnvironment($callback); }