lithium\tests\cases\core\EnvironmentTest::testEnvironmentDetection PHP Method

testEnvironmentDetection() public method

Tests auto-detecting environment settings through a series of mock request classes.
    public function testEnvironmentDetection()
    {
        Environment::set(new MockRequest(array('SERVER_ADDR' => '::1')));
        $this->assertTrue(Environment::is('development'));
        $request = new MockRequest(array('SERVER_ADDR' => '1.1.1.1', 'HTTP_HOST' => 'test.local'));
        Environment::set($request);
        $this->assertTrue(Environment::is('test'));
        $request = new MockRequest(array('SERVER_ADDR' => '1.1.1.1', 'HTTP_HOST' => 'www.com'));
        Environment::set($request);
        $isProduction = Environment::is('production');
        $this->assertTrue($isProduction);
        $request = new MockRequest(array('SERVER_ADDR' => '::1'));
        $request->url = '/test/myTest';
        Environment::set($request);
        $this->assertTrue(Environment::is('test'));
        $request = new MockRequest(array('SERVER_ADDR' => '::1'));
        $request->url = '/test';
        Environment::set($request);
        $this->assertTrue(Environment::is('test'));
        $request = new MockRequest();
        $request->command = 'test';
        Environment::set($request);
        $this->assertTrue(Environment::is('test'));
        $request = new MockRequest();
        $request->env = 'test';
        Environment::set($request);
        $this->assertTrue(Environment::is('test'));
        $request = new MockRequest(array('PLATFORM' => 'CLI'));
        Environment::set($request);
        $this->assertTrue(Environment::is('development'));
        $request = new MockRequest();
        $request->params = array('env' => 'production');
        Environment::set($request);
        $this->assertTrue(Environment::is('production'));
    }