Code Duplication    Length = 24-24 lines in 2 locations

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

@@ 101-124 (lines=24) @@
98
     * @covers \eZ\Publish\API\Repository\Repository::hasAccess
99
     * @dataProvider providerForTestHasAccessReturnsTrue
100
     */
101
    public function testHasAccessReturnsTrue(array $roles, array $roleAssignments)
102
    {
103
        /** @var $userHandlerMock \PHPUnit_Framework_MockObject_MockObject */
104
        $userHandlerMock = $this->getPersistenceMock()->userHandler();
105
        $mockedRepository = $this->getRepository();
106
107
        $userHandlerMock
108
            ->expects($this->once())
109
            ->method('loadRoleAssignmentsByGroupId')
110
            ->with($this->isType('integer'), $this->equalTo(true))
111
            ->will($this->returnValue($roleAssignments));
112
113
        foreach ($roleAssignments as $at => $roleAssignment) {
114
            $userHandlerMock
115
                ->expects($this->at($at + 1))
116
                ->method('loadRole')
117
                ->with($roleAssignment->roleId)
118
                ->will($this->returnValue($roles[$roleAssignment->roleId]));
119
        }
120
121
        $result = $mockedRepository->hasAccess('test-module', 'test-function');
122
123
        self::assertEquals(true, $result);
124
    }
125
126
    public function providerForTestHasAccessReturnsFalse()
127
    {
@@ 173-196 (lines=24) @@
170
     * @covers \eZ\Publish\API\Repository\Repository::hasAccess
171
     * @dataProvider providerForTestHasAccessReturnsFalse
172
     */
173
    public function testHasAccessReturnsFalse(array $roles, array $roleAssignments)
174
    {
175
        /** @var $userHandlerMock \PHPUnit_Framework_MockObject_MockObject */
176
        $userHandlerMock = $this->getPersistenceMock()->userHandler();
177
        $mockedRepository = $this->getRepository();
178
179
        $userHandlerMock
180
            ->expects($this->once())
181
            ->method('loadRoleAssignmentsByGroupId')
182
            ->with($this->isType('integer'), $this->equalTo(true))
183
            ->will($this->returnValue($roleAssignments));
184
185
        foreach ($roleAssignments as $at => $roleAssignment) {
186
            $userHandlerMock
187
                ->expects($this->at($at + 1))
188
                ->method('loadRole')
189
                ->with($roleAssignment->roleId)
190
                ->will($this->returnValue($roles[$roleAssignment->roleId]));
191
        }
192
193
        $result = $mockedRepository->hasAccess('test-module', 'test-function');
194
195
        self::assertEquals(false, $result);
196
    }
197
198
    /**
199
     * Test for the sudo() & hasAccess() method.