Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions app/config/config_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,8 @@ web_profiler:

swiftmailer:
disable_delivery: true

security:
firewalls:
main:
http_basic: ~
2 changes: 1 addition & 1 deletion src/ApiBundle/Controller/ApiExceptionController.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ public function showAction(Request $request, $exception, DebugLoggerInterface $l
$currentContent = $this->getAndCleanOutputBuffering($request->headers->get('X-Php-Ob-Level', -1));
$code = $this->getStatusCode($exception);

$errMessageArray = split('#showme#', $exception->getMessage());
$errMessageArray = explode('#showme#', $exception->getMessage());
$errorMessage = $errMessageArray[0];
$showMessage = count($errMessageArray) > 1 ? $errMessageArray[1] : '';

Expand Down
102 changes: 102 additions & 0 deletions src/ApiBundle/Tests/Controller/UserControllerTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
<?php

namespace Tests\ApiBundle\Controller;

use ApiBundle\Entity\User;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Symfony\Component\HttpFoundation\Response;

/**
* Functional test for the controllers defined inside BlogController.
*
* Execute the application tests using this command (requires PHPUnit to be installed):
*
* $ cd /var/www/html/authOauth/
* $ phpunit -c app
*/
class UserControllerTest extends WebTestCase
{
public function testRegularUsersCannotAccessToTheBackend()
{
$client = static::createClient([], [
'PHP_AUTH_USER' => 'aUser',
'PHP_AUTH_PW' => 'test1test1',
]);

$url = $client->getContainer()->get('router')->generate('admin_user_index');
$client->request('GET', $url);
// echo $client->getResponse()->getContent();die;

$this->assertEquals(Response::HTTP_FORBIDDEN, $client->getResponse()->getStatusCode());
}

public function testAdministratorUsersCanAccessToTheBackend()
{
$client = static::createClient([], [
'PHP_AUTH_USER' => 'admin',
'PHP_AUTH_PW' => 'admin',
]);

$url = $client->getContainer()->get('router')->generate('admin_user_index');
$client->request('GET', $url);

$this->assertEquals(Response::HTTP_OK, $client->getResponse()->getStatusCode());
}

public function testNormalUsersCannotAccessAdminLink()
{
$client = static::createClient([], [
'PHP_AUTH_USER' => 'aUser',
'PHP_AUTH_PW' => 'test1test1',
]);

$url = $client->getContainer()->get('router')->generate('user_index');
$crawler = $client->request('GET', $url);

$this->assertCount(
0,
$crawler->filterXPath("//a[contains(.,'Admin')]"),
'The Backend->Admin does not exist for normal user.'
);
}

public function testAdminUsersCanAccessAdminLink()
{
$client = static::createClient([], [
'PHP_AUTH_USER' => 'admin',
'PHP_AUTH_PW' => 'admin',
]);

$url = $client->getContainer()->get('router')->generate('admin_user_index');
$crawler = $client->request('GET', $url);

$this->assertCount(
1,
$crawler->filterXPath("//a[contains(.,'Admin')]"),
'The Backend->Admin does exist for admin user.'
);
}

public function testUserManagementList()
{
$client = static::createClient([], [
'PHP_AUTH_USER' => 'admin',
'PHP_AUTH_PW' => 'admin',
]);

$url = $client->getContainer()->get('router')->generate('admin_user_index');
$crawler = $client->request('GET', $url);

$link = $crawler->selectLink('Admin')->link();
$client->click($link);

$link = $crawler->selectLink('User Management')->link();
$client->click($link);

$this->assertCount(
2,
$crawler->filter('div#main table tbody tr'),
'The Backend->Admin->User Management page displays all the available users.'
);
}
}
18 changes: 0 additions & 18 deletions src/AppBundle/Tests/Controller/DefaultControllerTest.php

This file was deleted.