예제 #1
0
 public function test_switch_env_in_env_aware_mode()
 {
     $app = new HttpApp();
     $request = new HttpRequest();
     $app->handleRequest($request);
     $this->assertEquals('dev', $app->getEnvironment());
     $request = new HttpRequest();
     $app->setDebug(false);
     $request->getHeaders()->set('x-env', 'prod');
     $app->handleRequest($request);
     $this->assertEquals('dev', $app->getEnvironment());
     $this->assertNull($request->getHeaders()->find('x-env'));
     $request = new HttpRequest();
     $request->getHeaders()->set('x-env', 'prod');
     $app->setDebug(true);
     $app->handleRequest($request);
     $this->assertEquals('prod', $app->getEnvironment());
     $this->assertNull($request->getHeaders()->find('x-env'));
     $request = new HttpRequest();
     $request->getUrl()->getQuery()->set('env', 'stage');
     $app->setDebug(true);
     $app->handleRequest($request);
     $this->assertEquals('stage', $app->getEnvironment());
     $this->assertNull($request->getUrl()->getQuery()->get('env'));
     $request = new HttpRequest();
     $request->getUrl()->setPath('/env=test/some/url');
     $app->setDebug(true);
     $app->handleRequest($request);
     $this->assertEquals('test', $app->getEnvironment());
     $this->assertEquals('/some/url', $request->getUrl()->getPath());
     $request = new HttpRequest();
     $request->getUrl()->setPath('/some/url/env=demo');
     $app->setDebug(true);
     $app->handleRequest($request);
     $this->assertEquals('demo', $app->getEnvironment());
     $this->assertEquals('/some/url', $request->getUrl()->getPath());
     $request = new HttpRequest();
     $request->getUrl()->setPath('/some/env=stage/url');
     $app->setDebug(true);
     $app->handleRequest($request);
     $this->assertEquals('stage', $app->getEnvironment());
     $this->assertEquals('/some/url', $request->getUrl()->getPath());
 }
예제 #2
0
 public function test_get_parameter()
 {
     $request = new HttpRequest();
     $request->getUrl()->getQuery()->set('foo', 'bar');
     $request->getData()->set('foo', 'baz');
     $request->getData()->set('yolo', 'swag');
     $this->assertEquals('bar', $request->getParameter('foo', 'default'));
     $this->assertEquals('swag', $request->getParameter('yolo', 'default'));
     $this->assertEquals('default', $request->getParameter('swag', 'default'));
 }