Code Duplication    Length = 30-30 lines in 2 locations

eZ/Publish/Core/Repository/Tests/Service/Mock/PermissionTest.php 2 locations

@@ 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.