Code Duplication    Length = 23-26 lines in 3 locations

tests/unit/CheckAccessTrait.php 3 locations

@@ 22-45 (lines=24) @@
19
        }
20
    }
21
22
    public function testClient()
23
    {
24
        $this->assertTrue($this->auth->checkAccess('role:client', 'restore-password'));
25
        $this->assertTrue($this->auth->checkAccess('role:client', 'deposit'));
26
        $this->assertTrue($this->auth->checkAccess('role:client', 'domain.pay'));
27
        $this->assertTrue($this->auth->checkAccess('role:client', 'domain.push'));
28
        $this->assertTrue($this->auth->checkAccess('role:client', 'server.pay'));
29
30
        $this->assertFalse($this->auth->checkAccess('role:client', 'support'));
31
        $this->assertFalse($this->auth->checkAccess('role:client', 'manage'));
32
        $this->assertFalse($this->auth->checkAccess('role:client', 'employee.read'));
33
        $this->assertFalse($this->auth->checkAccess('role:client', 'domain.freeze'));
34
        $this->assertFalse($this->auth->checkAccess('role:client', 'domain.unfreeze'));
35
        $this->assertFalse($this->auth->checkAccess('role:client', 'domain.force-push'));
36
        $this->assertFalse($this->auth->checkAccess('role:client', 'domain.delete'));
37
        $this->assertFalse($this->auth->checkAccess('role:client', 'admin'));
38
        $this->assertFalse($this->auth->checkAccess('role:client', 'resell'));
39
        $this->assertFalse($this->auth->checkAccess('role:client', 'own'));
40
        $this->assertFalse($this->auth->checkAccess('role:client', 'document.manage'));
41
        $this->assertFalse($this->auth->checkAccess('role:client', 'contact.force-verify'));
42
        $this->assertFalse($this->auth->checkAccess('role:client', 'mailing.prepare'));
43
        $this->assertFalse($this->auth->checkAccess('role:client', 'mailing.send'));
44
        $this->assertFalse($this->auth->checkAccess('role:client', 'server.sell'));
45
    }
46
47
    public function testSupport()
48
    {
@@ 47-69 (lines=23) @@
44
        $this->assertFalse($this->auth->checkAccess('role:client', 'server.sell'));
45
    }
46
47
    public function testSupport()
48
    {
49
        $this->assertTrue($this->auth->checkAccess('role:support', 'support'));
50
51
        $this->assertFalse($this->auth->checkAccess('role:support', 'deposit'));
52
        $this->assertFalse($this->auth->checkAccess('role:support', 'domain.pay'));
53
        $this->assertFalse($this->auth->checkAccess('role:support', 'server.pay'));
54
        $this->assertFalse($this->auth->checkAccess('role:support', 'server.sell'));
55
        $this->assertFalse($this->auth->checkAccess('role:support', 'restore-password'));
56
        $this->assertFalse($this->auth->checkAccess('role:support', 'manage'));
57
        $this->assertFalse($this->auth->checkAccess('role:support', 'employee.read'));
58
        $this->assertFalse($this->auth->checkAccess('role:support', 'domain.freeze'));
59
        $this->assertFalse($this->auth->checkAccess('role:support', 'domain.unfreeze'));
60
        $this->assertFalse($this->auth->checkAccess('role:support', 'domain.force-push'));
61
        $this->assertFalse($this->auth->checkAccess('role:support', 'domain.delete'));
62
        $this->assertFalse($this->auth->checkAccess('role:support', 'admin'));
63
        $this->assertFalse($this->auth->checkAccess('role:support', 'resell'));
64
        $this->assertFalse($this->auth->checkAccess('role:support', 'own'));
65
        $this->assertFalse($this->auth->checkAccess('role:support', 'document.manage'));
66
        $this->assertFalse($this->auth->checkAccess('role:support', 'contact.force-verify'));
67
        $this->assertFalse($this->auth->checkAccess('role:support', 'mailing.prepare'));
68
        $this->assertFalse($this->auth->checkAccess('role:support', 'mailing.send'));
69
    }
70
71
    public function testManager()
72
    {
@@ 151-176 (lines=26) @@
148
        $this->assertFalse($this->auth->checkAccess('user:mighty', 'domain.unfreeze'));
149
    }
150
151
    public function testDeny()
152
    {
153
        $this->auth->setAssignments('role:client,deny:deposit,deny:domain.push,deny:server.pay', 'user:limited');
154
155
        $this->assertTrue($this->auth->checkAccess('user:limited', 'restore-password'));
156
        $this->assertTrue($this->auth->checkAccess('user:limited', 'domain.pay'));
157
158
        $this->assertFalse($this->auth->checkAccess('user:limited', 'deposit'));
159
        $this->assertFalse($this->auth->checkAccess('user:limited', 'domain.push'));
160
        $this->assertFalse($this->auth->checkAccess('user:limited', 'server.pay'));
161
162
        $this->assertFalse($this->auth->checkAccess('user:limited', 'support'));
163
        $this->assertFalse($this->auth->checkAccess('user:limited', 'manage'));
164
        $this->assertFalse($this->auth->checkAccess('user:limited', 'employee.read'));
165
        $this->assertFalse($this->auth->checkAccess('user:limited', 'domain.freeze'));
166
        $this->assertFalse($this->auth->checkAccess('user:limited', 'domain.unfreeze'));
167
        $this->assertFalse($this->auth->checkAccess('user:limited', 'domain.force-push'));
168
        $this->assertFalse($this->auth->checkAccess('user:limited', 'domain.delete'));
169
        $this->assertFalse($this->auth->checkAccess('user:limited', 'admin'));
170
        $this->assertFalse($this->auth->checkAccess('user:limited', 'resell'));
171
        $this->assertFalse($this->auth->checkAccess('user:limited', 'own'));
172
        $this->assertFalse($this->auth->checkAccess('user:limited', 'document.manage'));
173
        $this->assertFalse($this->auth->checkAccess('user:limited', 'contact.force-verify'));
174
        $this->assertFalse($this->auth->checkAccess('user:limited', 'mailing.prepare'));
175
        $this->assertFalse($this->auth->checkAccess('user:limited', 'mailing.send'));
176
    }
177
}
178