GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.

test_has_perm_change_with_obj_without_any()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
c 0
b 0
f 0
dl 0
loc 7
rs 9.4285
1
# coding=utf-8
2
from django.test import TestCase, override_settings
3
from ...logics import StaffPermissionLogic
4
from ...utils.logics import add_permission_logic
5
from ..utils import create_user, create_anonymous, create_article
6
7
8
@override_settings(
9
    PERMISSION_DEFAULT_SPL_ANY_PERMISSION=True,
10
    PERMISSION_DEFAULT_SPL_ADD_PERMISSION=True,
11
    PERMISSION_DEFAULT_SPL_CHANGE_PERMISSION=True,
12
    PERMISSION_DEFAULT_SPL_DELETE_PERMISSION=True,
13
)
14
class PermissionLogicsStaffPermissionLogicTestCase(TestCase):
15
    def setUp(self):
16
        self.user1 = create_user('john', is_staff=True)
17
        self.user2 = create_user('tony')
18
        self.anonymous = create_anonymous()
19
        self.perm1 = 'permission.add_article'
20
        self.perm2 = 'permission.change_article'
21
        self.perm3 = 'permission.delete_article'
22
        self.article = create_article('test')
23
24
    def test_constructor(self):
25
        permission_logic = StaffPermissionLogic()
26
        add_permission_logic(self.article.__class__, permission_logic)
27
28
        self.assertTrue(isinstance(permission_logic, StaffPermissionLogic))
29
        self.assertEqual(permission_logic.any_permission, True)
30
        self.assertEqual(permission_logic.add_permission, True)
31
        self.assertEqual(permission_logic.change_permission, True)
32
        self.assertEqual(permission_logic.delete_permission, True)
33
34
    def test_constructor_with_specifing_any_permission(self):
35
        permission_logic = StaffPermissionLogic(any_permission=False)
36
        add_permission_logic(self.article.__class__, permission_logic)
37
        self.assertTrue(isinstance(permission_logic, StaffPermissionLogic))
38
        self.assertEqual(permission_logic.any_permission, False)
39
40
    def test_constructor_with_specifing_add_permission(self):
41
        permission_logic = StaffPermissionLogic(add_permission=False)
42
        add_permission_logic(self.article.__class__, permission_logic)
43
        self.assertTrue(isinstance(permission_logic, StaffPermissionLogic))
44
        self.assertEqual(permission_logic.add_permission, False)
45
46
    def test_constructor_with_specifing_change_permission(self):
47
        permission_logic = StaffPermissionLogic(change_permission=False)
48
        add_permission_logic(self.article.__class__, permission_logic)
49
        self.assertTrue(isinstance(permission_logic, StaffPermissionLogic))
50
        self.assertEqual(permission_logic.change_permission, False)
51
52
    def test_constructor_with_specifing_delete_permission(self):
53
        permission_logic = StaffPermissionLogic(delete_permission=False)
54
        add_permission_logic(self.article.__class__, permission_logic)
55
        self.assertTrue(isinstance(permission_logic, StaffPermissionLogic))
56
        self.assertEqual(permission_logic.delete_permission, False)
57
58
    def test_has_perm_add_without_obj(self):
59
        permission_logic = StaffPermissionLogic()
60
        add_permission_logic(self.article.__class__, permission_logic)
61
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm1))
62
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm1))
63
64
    def test_has_perm_change_without_obj(self):
65
        permission_logic = StaffPermissionLogic()
66
        add_permission_logic(self.article.__class__, permission_logic)
67
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm2))
68
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm2))
69
70
    def test_has_perm_delete_without_obj(self):
71
        permission_logic = StaffPermissionLogic()
72
        add_permission_logic(self.article.__class__, permission_logic)
73
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm3))
74
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm3))
75
76
    def test_has_perm_add_with_obj(self):
77
        permission_logic = StaffPermissionLogic()
78
        add_permission_logic(self.article.__class__, permission_logic)
79
        self.assertTrue(
80
                permission_logic.has_perm(self.user1, self.perm1, self.article))
81
        self.assertFalse(
82
                permission_logic.has_perm(self.user2, self.perm1, self.article))
83
84
    def test_has_perm_change_with_obj(self):
85
        permission_logic = StaffPermissionLogic()
86
        add_permission_logic(self.article.__class__, permission_logic)
87
        self.assertTrue(
88
                permission_logic.has_perm(self.user1, self.perm2, self.article))
89
        self.assertFalse(
90
                permission_logic.has_perm(self.user2, self.perm2, self.article))
91
92
    def test_has_perm_delete_with_obj(self):
93
        permission_logic = StaffPermissionLogic()
94
        add_permission_logic(self.article.__class__, permission_logic)
95
        self.assertTrue(
96
                permission_logic.has_perm(self.user1, self.perm3, self.article))
97
        self.assertFalse(
98
                permission_logic.has_perm(self.user2, self.perm3, self.article))
99
100
    def test_has_perm_add_without_obj_with_anonymous(self):
101
        permission_logic = StaffPermissionLogic()
102
        add_permission_logic(self.article.__class__, permission_logic)
103
        self.assertFalse(permission_logic.has_perm(self.anonymous, self.perm1))
104
105
    def test_has_perm_change_without_obj_with_anonymous(self):
106
        permission_logic = StaffPermissionLogic()
107
        add_permission_logic(self.article.__class__, permission_logic)
108
        self.assertFalse(permission_logic.has_perm(self.anonymous, self.perm2))
109
110
    def test_has_perm_delete_without_obj_with_anonymous(self):
111
        permission_logic = StaffPermissionLogic()
112
        add_permission_logic(self.article.__class__, permission_logic)
113
        self.assertFalse(permission_logic.has_perm(self.anonymous, self.perm3))
114
115
    def test_has_perm_add_with_obj_with_anonymous(self):
116
        permission_logic = StaffPermissionLogic()
117
        add_permission_logic(self.article.__class__, permission_logic)
118
        self.assertFalse(
119
            permission_logic.has_perm(self.anonymous, self.perm1, self.article))
120
121
    def test_has_perm_change_with_obj_with_anonymous(self):
122
        permission_logic = StaffPermissionLogic()
123
        add_permission_logic(self.article.__class__, permission_logic)
124
        self.assertFalse(
125
            permission_logic.has_perm(self.anonymous, self.perm2, self.article))
126
127
    def test_has_perm_delete_with_obj_with_anonymous(self):
128
        permission_logic = StaffPermissionLogic()
129
        add_permission_logic(self.article.__class__, permission_logic)
130
        self.assertFalse(
131
            permission_logic.has_perm(self.anonymous, self.perm3, self.article))
132
133
    def test_has_perm_add_without_obj_without_any(self):
134
        permission_logic = StaffPermissionLogic(any_permission=False)
135
        add_permission_logic(self.article.__class__, permission_logic)
136
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm1))
137
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm1))
138
139
    def test_has_perm_change_without_obj_without_any(self):
140
        permission_logic = StaffPermissionLogic(any_permission=False)
141
        add_permission_logic(self.article.__class__, permission_logic)
142
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm2))
143
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm2))
144
145
    def test_has_perm_delete_without_obj_without_any(self):
146
        permission_logic = StaffPermissionLogic(any_permission=False)
147
        add_permission_logic(self.article.__class__, permission_logic)
148
        self.assertTrue(permission_logic.has_perm(self.user1, self.perm3))
149
        self.assertFalse(permission_logic.has_perm(self.user2, self.perm3))
150
151
    def test_has_perm_add_with_obj_without_any(self):
152
        permission_logic = StaffPermissionLogic(any_permission=False)
153
        add_permission_logic(self.article.__class__, permission_logic)
154
        self.assertTrue(
155
                permission_logic.has_perm(self.user1, self.perm1, self.article))
156
        self.assertFalse(
157
                permission_logic.has_perm(self.user2, self.perm1, self.article))
158
159
    def test_has_perm_change_with_obj_without_any(self):
160
        permission_logic = StaffPermissionLogic(any_permission=False)
161
        add_permission_logic(self.article.__class__, permission_logic)
162
        self.assertTrue(
163
                permission_logic.has_perm(self.user1, self.perm2, self.article))
164
        self.assertFalse(
165
                permission_logic.has_perm(self.user2, self.perm2, self.article))
166
167
    def test_has_perm_delete_with_obj_without_any(self):
168
        permission_logic = StaffPermissionLogic(any_permission=False)
169
        add_permission_logic(self.article.__class__, permission_logic)
170
        self.assertTrue(
171
                permission_logic.has_perm(self.user1, self.perm3, self.article))
172
        self.assertFalse(
173
                permission_logic.has_perm(self.user2, self.perm3, self.article))
174