Passed
Push — master ( 64f2a1...d32ce5 )
by Simon
03:27 queued 01:17
created

RolesProviderTest::testGetRoles()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 12
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 12
rs 9.4285
cc 1
eloc 9
nc 1
nop 0
1
<?php
2
3
namespace Sil\RouteSecurityBundle\Tests\Role;
4
5
use PHPUnit\Framework\TestCase;
6
use Sil\RouteSecurityBundle\Role\RolesProvider;
7
use Sil\RouteSecurityBundle\Role\RouteToRoleConverter;
8
9
class RolesProviderTest extends TestCase
10
{
11
    public function testGetRoles()
12
    {
13
        $secured_routes = ['route_foo', 'route_bar'];
14
        $routeToRoleConverter = $this->createMock(RouteToRoleConverter::class);
15
        $routeToRoleConverter
16
            ->expects(new \PHPUnit_Framework_MockObject_Matcher_InvokedCount(count($secured_routes)))
17
            ->method('generateRoleForRoute')
18
            ->will($this->returnCallback(function ($route) {
19
                return 'ROLE_'.strtoupper($route);
20
            }));
21
        $rolesProvider = new RolesProvider($routeToRoleConverter, $secured_routes);
22
        $this->assertEquals(['ROLE_ROUTE_FOO', 'ROLE_ROUTE_BAR'], $rolesProvider->getRoles());
23
    }
24
}
25