Skip to content
This repository has been archived by the owner on Jan 15, 2024. It is now read-only.

Commit

Permalink
Minor refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
kleijnweb committed May 1, 2016
1 parent 51e77a7 commit 004d332
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 32 deletions.
15 changes: 3 additions & 12 deletions src/Tests/Functional/App/Controller/TestController.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,34 +17,25 @@
class TestController
{
/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
* @param Request $request
*
* @return Response
*/
public function secureAction(Request $request)
public function secureAction()
{
return new Response('SECURED CONTENT');
}

/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
* @param Request $request
*
* @return Response
*/
public function securedWithSecretLoaderAction(Request $request)
public function securedWithSecretLoaderAction()
{
return new Response('CONTENT SECURED WITH SECRET LOADER');
}

/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
* @param Request $request
*
* @return Response
*/
public function unsecureAction(Request $request)
public function unsecuredAction()
{
return new Response('UNSECURED CONTENT');
}
Expand Down
2 changes: 1 addition & 1 deletion src/Tests/Functional/App/app/routing.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
unsecured:
path: /unsecured
defaults: { _controller: TestBundle:Test:unsecure }
defaults: { _controller: TestBundle:Test:unsecured }

secured:
path: /secured
Expand Down
55 changes: 36 additions & 19 deletions src/Tests/Functional/FunctionalTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

use KleijnWeb\JwtBundle\Tests\Authenticator\AuthenticatorTest;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Symfony\Bundle\FrameworkBundle\Client;

/**
* @author John Kleijn <john@kleijnweb.nl>
Expand All @@ -27,9 +28,10 @@ class FunctionalTest extends WebTestCase
*/
public function canGetUnsecuredContentWithoutToken()
{
$client = $this->createClient();
$client->request('GET', '/unsecured');
$this->assertSame('UNSECURED CONTENT', $client->getResponse()->getContent());
$this->assertSame(
'UNSECURED CONTENT',
$this->makeRequest('/unsecured')
);
}

/**
Expand All @@ -38,8 +40,7 @@ public function canGetUnsecuredContentWithoutToken()
*/
public function cannotGetSecuredContentWithoutToken()
{
$client = $this->createClient();
$client->request('GET', '/secured');
$this->makeRequest('/secured');
}

/**
Expand All @@ -48,41 +49,57 @@ public function cannotGetSecuredContentWithoutToken()
*/
public function cannotGetSecuredContentWitInvalidToken()
{
$client = $this->createClient();
$server = ['HTTP_AUTHORIZATION' => 'Bearer foo'];
$client->request('GET', '/secured', $parameters = [], $files = [], $server);
$this->makeRequest('/secured', 'foo');
}

/**
* @test
*/
public function canGetSecuredContentWitValidPskToken()
{
$client = $this->createClient();
$server = ['HTTP_AUTHORIZATION' => 'Bearer ' . self::PSK_TOKEN];
$client->request('GET', '/secured', $parameters = [], $files = [], $server);
$this->assertSame('SECURED CONTENT', $client->getResponse()->getContent());
$this->assertSame(
'SECURED CONTENT',
$this->makeRequest('/secured', self::PSK_TOKEN)
);
}

/**
* @test
*/
public function canGetSecuredContentWitValidHmacToken()
{
$client = $this->createClient();
$server = ['HTTP_AUTHORIZATION' => 'Bearer ' . self::HMAC_TOKEN];
$client->request('GET', '/secured', $parameters = [], $files = [], $server);
$this->assertSame('SECURED CONTENT', $client->getResponse()->getContent());
$this->assertSame(
'SECURED CONTENT',
$this->makeRequest('/secured', self::HMAC_TOKEN)
);
}

/**
* @test
*/
public function canGetSecuredContentWithSecretLoader()
{
$this->assertSame(
'CONTENT SECURED WITH SECRET LOADER',
$this->makeRequest('/secured-with-secret-loader', self::DYN_HMAC_TOKEN)
);
}

/**
* @param string $url
* @param string $token
*
* @return string
*/
private function makeRequest($url, $token = null)
{
$client = $this->createClient();
$server = ['HTTP_AUTHORIZATION' => 'Bearer ' . self::DYN_HMAC_TOKEN];
$client->request('GET', '/secured-with-secret-loader', $parameters = [], $files = [], $server);
$this->assertSame('CONTENT SECURED WITH SECRET LOADER', $client->getResponse()->getContent());
$server = [];
if ($token) {
$server = ['HTTP_AUTHORIZATION' => 'Bearer ' . $token];
}
$client->request('GET', $url, $parameters = [], $files = [], $server);

return $client->getResponse()->getContent();
}
}

0 comments on commit 004d332

Please sign in to comment.