|
@@ 99-128 (lines=30) @@
|
| 96 |
|
* |
| 97 |
|
* @dataProvider providerForTestHasAccessReturnsTrue |
| 98 |
|
*/ |
| 99 |
|
public function testHasAccessReturnsTrue(array $roles, array $roleAssignments) |
| 100 |
|
{ |
| 101 |
|
/** @var $userHandlerMock \PHPUnit_Framework_MockObject_MockObject */ |
| 102 |
|
$userHandlerMock = $this->getPersistenceMock()->userHandler(); |
| 103 |
|
$userReferenceMock = $this->getUserReferenceMock(); |
| 104 |
|
$mockedService = $this->getPermissionResolverMock(null); |
| 105 |
|
|
| 106 |
|
$userReferenceMock |
| 107 |
|
->expects($this->once()) |
| 108 |
|
->method('getUserId') |
| 109 |
|
->will($this->returnValue(10)); |
| 110 |
|
|
| 111 |
|
$userHandlerMock |
| 112 |
|
->expects($this->once()) |
| 113 |
|
->method('loadRoleAssignmentsByGroupId') |
| 114 |
|
->with($this->equalTo(10), $this->equalTo(true)) |
| 115 |
|
->will($this->returnValue($roleAssignments)); |
| 116 |
|
|
| 117 |
|
foreach ($roleAssignments as $at => $roleAssignment) { |
| 118 |
|
$userHandlerMock |
| 119 |
|
->expects($this->at($at + 1)) |
| 120 |
|
->method('loadRole') |
| 121 |
|
->with($roleAssignment->roleId) |
| 122 |
|
->will($this->returnValue($roles[$roleAssignment->roleId])); |
| 123 |
|
} |
| 124 |
|
|
| 125 |
|
$result = $mockedService->hasAccess('test-module', 'test-function'); |
| 126 |
|
|
| 127 |
|
self::assertEquals(true, $result); |
| 128 |
|
} |
| 129 |
|
|
| 130 |
|
public function providerForTestHasAccessReturnsFalse() |
| 131 |
|
{ |
|
@@ 176-205 (lines=30) @@
|
| 173 |
|
* |
| 174 |
|
* @dataProvider providerForTestHasAccessReturnsFalse |
| 175 |
|
*/ |
| 176 |
|
public function testHasAccessReturnsFalse(array $roles, array $roleAssignments) |
| 177 |
|
{ |
| 178 |
|
/** @var $userHandlerMock \PHPUnit_Framework_MockObject_MockObject */ |
| 179 |
|
$userHandlerMock = $this->getPersistenceMock()->userHandler(); |
| 180 |
|
$userReferenceMock = $this->getUserReferenceMock(); |
| 181 |
|
$service = $this->getPermissionResolverMock(null); |
| 182 |
|
|
| 183 |
|
$userReferenceMock |
| 184 |
|
->expects($this->once()) |
| 185 |
|
->method('getUserId') |
| 186 |
|
->will($this->returnValue(10)); |
| 187 |
|
|
| 188 |
|
$userHandlerMock |
| 189 |
|
->expects($this->once()) |
| 190 |
|
->method('loadRoleAssignmentsByGroupId') |
| 191 |
|
->with($this->equalTo(10), $this->equalTo(true)) |
| 192 |
|
->will($this->returnValue($roleAssignments)); |
| 193 |
|
|
| 194 |
|
foreach ($roleAssignments as $at => $roleAssignment) { |
| 195 |
|
$userHandlerMock |
| 196 |
|
->expects($this->at($at + 1)) |
| 197 |
|
->method('loadRole') |
| 198 |
|
->with($roleAssignment->roleId) |
| 199 |
|
->will($this->returnValue($roles[$roleAssignment->roleId])); |
| 200 |
|
} |
| 201 |
|
|
| 202 |
|
$result = $service->hasAccess('test-module', 'test-function'); |
| 203 |
|
|
| 204 |
|
self::assertEquals(false, $result); |
| 205 |
|
} |
| 206 |
|
|
| 207 |
|
/** |
| 208 |
|
* Test for the sudo() & hasAccess() method. |