You are here

class RequestContextTest in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/routing/Tests/RequestContextTest.php \Symfony\Component\Routing\Tests\RequestContextTest

Hierarchy

  • class \Symfony\Component\Routing\Tests\RequestContextTest extends \Symfony\Component\Routing\Tests\PHPUnit_Framework_TestCase

Expanded class hierarchy of RequestContextTest

File

vendor/symfony/routing/Tests/RequestContextTest.php, line 17

Namespace

Symfony\Component\Routing\Tests
View source
class RequestContextTest extends \PHPUnit_Framework_TestCase {
  public function testConstruct() {
    $requestContext = new RequestContext('foo', 'post', 'foo.bar', 'HTTPS', 8080, 444, '/baz', 'bar=foobar');
    $this
      ->assertEquals('foo', $requestContext
      ->getBaseUrl());
    $this
      ->assertEquals('POST', $requestContext
      ->getMethod());
    $this
      ->assertEquals('foo.bar', $requestContext
      ->getHost());
    $this
      ->assertEquals('https', $requestContext
      ->getScheme());
    $this
      ->assertSame(8080, $requestContext
      ->getHttpPort());
    $this
      ->assertSame(444, $requestContext
      ->getHttpsPort());
    $this
      ->assertEquals('/baz', $requestContext
      ->getPathInfo());
    $this
      ->assertEquals('bar=foobar', $requestContext
      ->getQueryString());
  }
  public function testFromRequest() {
    $request = Request::create('https://test.com:444/foo?bar=baz');
    $requestContext = new RequestContext();
    $requestContext
      ->setHttpPort(123);
    $requestContext
      ->fromRequest($request);
    $this
      ->assertEquals('', $requestContext
      ->getBaseUrl());
    $this
      ->assertEquals('GET', $requestContext
      ->getMethod());
    $this
      ->assertEquals('test.com', $requestContext
      ->getHost());
    $this
      ->assertEquals('https', $requestContext
      ->getScheme());
    $this
      ->assertEquals('/foo', $requestContext
      ->getPathInfo());
    $this
      ->assertEquals('bar=baz', $requestContext
      ->getQueryString());
    $this
      ->assertSame(123, $requestContext
      ->getHttpPort());
    $this
      ->assertSame(444, $requestContext
      ->getHttpsPort());
    $request = Request::create('http://test.com:8080/foo?bar=baz');
    $requestContext = new RequestContext();
    $requestContext
      ->setHttpsPort(567);
    $requestContext
      ->fromRequest($request);
    $this
      ->assertSame(8080, $requestContext
      ->getHttpPort());
    $this
      ->assertSame(567, $requestContext
      ->getHttpsPort());
  }
  public function testGetParameters() {
    $requestContext = new RequestContext();
    $this
      ->assertEquals(array(), $requestContext
      ->getParameters());
    $requestContext
      ->setParameters(array(
      'foo' => 'bar',
    ));
    $this
      ->assertEquals(array(
      'foo' => 'bar',
    ), $requestContext
      ->getParameters());
  }
  public function testHasParameter() {
    $requestContext = new RequestContext();
    $requestContext
      ->setParameters(array(
      'foo' => 'bar',
    ));
    $this
      ->assertTrue($requestContext
      ->hasParameter('foo'));
    $this
      ->assertFalse($requestContext
      ->hasParameter('baz'));
  }
  public function testGetParameter() {
    $requestContext = new RequestContext();
    $requestContext
      ->setParameters(array(
      'foo' => 'bar',
    ));
    $this
      ->assertEquals('bar', $requestContext
      ->getParameter('foo'));
    $this
      ->assertNull($requestContext
      ->getParameter('baz'));
  }
  public function testSetParameter() {
    $requestContext = new RequestContext();
    $requestContext
      ->setParameter('foo', 'bar');
    $this
      ->assertEquals('bar', $requestContext
      ->getParameter('foo'));
  }
  public function testMethod() {
    $requestContext = new RequestContext();
    $requestContext
      ->setMethod('post');
    $this
      ->assertSame('POST', $requestContext
      ->getMethod());
  }
  public function testScheme() {
    $requestContext = new RequestContext();
    $requestContext
      ->setScheme('HTTPS');
    $this
      ->assertSame('https', $requestContext
      ->getScheme());
  }
  public function testHost() {
    $requestContext = new RequestContext();
    $requestContext
      ->setHost('eXampLe.com');
    $this
      ->assertSame('example.com', $requestContext
      ->getHost());
  }
  public function testQueryString() {
    $requestContext = new RequestContext();
    $requestContext
      ->setQueryString(null);
    $this
      ->assertSame('', $requestContext
      ->getQueryString());
  }
  public function testPort() {
    $requestContext = new RequestContext();
    $requestContext
      ->setHttpPort('123');
    $requestContext
      ->setHttpsPort('456');
    $this
      ->assertSame(123, $requestContext
      ->getHttpPort());
    $this
      ->assertSame(456, $requestContext
      ->getHttpsPort());
  }
  public function testFluentInterface() {
    $requestContext = new RequestContext();
    $this
      ->assertSame($requestContext, $requestContext
      ->setBaseUrl('/app.php'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setPathInfo('/index'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setMethod('POST'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setScheme('https'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setHost('example.com'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setQueryString('foo=bar'));
    $this
      ->assertSame($requestContext, $requestContext
      ->setHttpPort(80));
    $this
      ->assertSame($requestContext, $requestContext
      ->setHttpsPort(443));
    $this
      ->assertSame($requestContext, $requestContext
      ->setParameters(array()));
    $this
      ->assertSame($requestContext, $requestContext
      ->setParameter('foo', 'bar'));
  }

}

Members