Code Duplication    Length = 30-30 lines in 2 locations

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

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