From f917697b8eb677b72fc6ec85d7abe4ff5d538e11 Mon Sep 17 00:00:00 2001 From: Alejandro Celaya <alejandro@alejandrocelaya.com> Date: Tue, 19 Jul 2016 18:19:05 +0200 Subject: [PATCH] Added first tests to Rest module --- .../Middleware/CrossDomainMiddlewareTest.php | 54 +++++++++++++++++++ phpunit.xml.dist | 3 ++ 2 files changed, 57 insertions(+) create mode 100644 module/Rest/test/Middleware/CrossDomainMiddlewareTest.php diff --git a/module/Rest/test/Middleware/CrossDomainMiddlewareTest.php b/module/Rest/test/Middleware/CrossDomainMiddlewareTest.php new file mode 100644 index 00000000..92656c82 --- /dev/null +++ b/module/Rest/test/Middleware/CrossDomainMiddlewareTest.php @@ -0,0 +1,54 @@ +<?php +namespace ShlinkioTest\Shlink\Rest\Middleware; + +use PHPUnit_Framework_TestCase as TestCase; +use Shlinkio\Shlink\Rest\Middleware\CrossDomainMiddleware; +use Zend\Diactoros\Response; +use Zend\Diactoros\ServerRequestFactory; + +class CrossDomainMiddlewareTest extends TestCase +{ + /** + * @var CrossDomainMiddleware + */ + protected $middleware; + + public function setUp() + { + $this->middleware = new CrossDomainMiddleware(); + } + + /** + * @test + */ + public function anyRequestIncludesTheAllowAccessHeader() + { + $response = $this->middleware->__invoke( + ServerRequestFactory::fromGlobals(), + new Response(), + function ($req, $resp) { + return $resp; + } + ); + + $headers = $response->getHeaders(); + $this->assertArrayHasKey('Access-Control-Allow-Origin', $headers); + $this->assertArrayNotHasKey('Access-Control-Allow-Headers', $headers); + } + + /** + * @test + */ + public function optionsRequestIncludesMoreHeaders() + { + $request = ServerRequestFactory::fromGlobals(['REQUEST_METHOD' => 'OPTIONS']); + + $response = $this->middleware->__invoke($request, new Response(), function ($req, $resp) { + return $resp; + }); + + $headers = $response->getHeaders(); + $this->assertArrayHasKey('Access-Control-Allow-Origin', $headers); + $this->assertArrayHasKey('Access-Control-Allow-Headers', $headers); + } +} diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 61fefa13..2c43e876 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -6,6 +6,9 @@ <testsuite name="Core"> <directory>./module/Core/test</directory> </testsuite> + <testsuite name="Rest"> + <directory>./module/Rest/test</directory> + </testsuite> </testsuites> <filter>