@@ -24,9 +24,9 @@ def test_methods_to_perms_invalid_perm_name(self):
24
24
25
25
def test_methods_to_perms (self ):
26
26
perms = acl .methods_to_perms ('get' , self .methods_map )
27
- assert perms == ['index ' ]
27
+ assert perms == ['view ' ]
28
28
perms = acl .methods_to_perms ('get,post' , self .methods_map )
29
- assert sorted (perms ) == ['create' , 'index ' ]
29
+ assert sorted (perms ) == ['create' , 'view ' ]
30
30
31
31
def test_parse_acl_no_string (self ):
32
32
perms = acl .parse_acl ('' , self .methods_map )
@@ -85,12 +85,12 @@ def test_no_security(self, mock_parse):
85
85
model_cls = 'Foo' ,
86
86
raml_resource = Mock (security_schemes = []),
87
87
es_based = True )
88
- assert acl_cls .__context_class__ == 'Foo'
88
+ assert acl_cls .item_model == 'Foo'
89
89
assert issubclass (acl_cls , acl .BaseACL )
90
90
instance = acl_cls (request = None )
91
91
assert instance .es_based
92
- assert instance .collection_acl == [acl .ALLOW_ALL ]
93
- assert instance .item_acl == [acl .ALLOW_ALL ]
92
+ assert instance ._collection_acl == [acl .ALLOW_ALL ]
93
+ assert instance ._item_acl == [acl .ALLOW_ALL ]
94
94
assert not mock_parse .called
95
95
96
96
def test_wrong_security_scheme_type (self , mock_parse ):
@@ -102,12 +102,12 @@ def test_wrong_security_scheme_type(self, mock_parse):
102
102
raml_resource = raml_resource ,
103
103
es_based = False )
104
104
assert not mock_parse .called
105
- assert acl_cls .__context_class__ == 'Foo'
105
+ assert acl_cls .item_model == 'Foo'
106
106
assert issubclass (acl_cls , acl .BaseACL )
107
107
instance = acl_cls (request = None )
108
108
assert not instance .es_based
109
- assert instance .collection_acl == [acl .ALLOW_ALL ]
110
- assert instance .item_acl == [acl .ALLOW_ALL ]
109
+ assert instance ._collection_acl == [acl .ALLOW_ALL ]
110
+ assert instance ._item_acl == [acl .ALLOW_ALL ]
111
111
112
112
def test_correct_security_scheme (self , mock_parse ):
113
113
raml_resource = Mock (security_schemes = [
@@ -122,18 +122,18 @@ def test_correct_security_scheme(self, mock_parse):
122
122
call (acl_string = 7 , methods_map = acl .item_methods ),
123
123
])
124
124
instance = acl_cls (request = None )
125
- assert instance .collection_acl == mock_parse ()
126
- assert instance .item_acl == mock_parse ()
125
+ assert instance ._collection_acl == mock_parse ()
126
+ assert instance ._item_acl == mock_parse ()
127
127
assert not instance .es_based
128
128
129
129
130
130
class TestBaseACL (object ):
131
131
132
132
def test_init (self ):
133
133
obj = acl .BaseACL (request = 'Foo' )
134
- assert obj .__context_class__ is None
135
- assert obj .collection_acl is None
136
- assert obj .item_acl is None
134
+ assert obj .item_model is None
135
+ assert obj ._collection_acl == ( acl . ALLOW_ALL ,)
136
+ assert obj ._item_acl == ( acl . ALLOW_ALL ,)
137
137
assert obj .request == 'Foo'
138
138
139
139
def test_apply_callables_no_callables (self ):
@@ -199,11 +199,11 @@ def test_apply_callables_functional(self):
199
199
acl = [(Deny , principal , ALL_PERMISSIONS )],
200
200
methods_map = acl .item_methods ,
201
201
)
202
- assert new_acl == [(Allow , Everyone , ['show ' ])]
202
+ assert new_acl == [(Allow , Everyone , ['view ' ])]
203
203
204
204
def test_magic_acl (self ):
205
205
obj = acl .BaseACL ('req' )
206
- obj .collection_acl = [(1 , 2 , 3 )]
206
+ obj ._collection_acl = [(1 , 2 , 3 )]
207
207
obj ._apply_callables = Mock ()
208
208
result = obj .__acl__ ()
209
209
obj ._apply_callables .assert_called_once_with (
@@ -212,11 +212,11 @@ def test_magic_acl(self):
212
212
)
213
213
assert result == obj ._apply_callables ()
214
214
215
- def test_context_acl (self ):
215
+ def test_item_acl (self ):
216
216
obj = acl .BaseACL ('req' )
217
- obj .item_acl = [(1 , 2 , 3 )]
217
+ obj ._item_acl = [(1 , 2 , 3 )]
218
218
obj ._apply_callables = Mock ()
219
- result = obj .context_acl ( obj = 'foobar' )
219
+ result = obj .item_acl ( 'foobar' )
220
220
obj ._apply_callables .assert_called_once_with (
221
221
acl = [(1 , 2 , 3 )],
222
222
methods_map = acl .item_methods ,
@@ -226,50 +226,50 @@ def test_context_acl(self):
226
226
227
227
def test_magic_getitem_es_based (self ):
228
228
obj = acl .BaseACL ('req' )
229
- obj .resolve_self_key = Mock ()
229
+ obj .item_db_id = Mock (return_value = 42 )
230
230
obj .getitem_es = Mock ()
231
231
obj .es_based = True
232
232
obj .__getitem__ (1 )
233
- obj .resolve_self_key .assert_called_once_with (1 )
234
- obj .getitem_es .assert_called_once_with (key = obj . resolve_self_key () )
233
+ obj .item_db_id .assert_called_once_with (1 )
234
+ obj .getitem_es .assert_called_once_with (42 )
235
235
236
236
def test_magic_getitem_db_based (self ):
237
237
obj = acl .BaseACL ('req' )
238
- obj .resolve_self_key = Mock ()
239
- obj .getitem_db = Mock ()
238
+ obj .item_db_id = Mock (return_value = 42 )
239
+ obj .item_model = Mock ()
240
+ obj .item_model .pk_field .return_value = 'id'
240
241
obj .es_based = False
241
242
obj .__getitem__ (1 )
242
- obj .resolve_self_key .assert_called_once_with (1 )
243
- obj .getitem_db .assert_called_once_with (key = obj .resolve_self_key ())
243
+ obj .item_db_id .assert_called_once_with (1 )
244
244
245
245
def test_getitem_db (self ):
246
246
obj = acl .BaseACL ('req' )
247
- obj .__context_class__ = Mock ()
248
- obj .__context_class__ .pk_field .return_value = 'myname'
249
- obj .context_acl = Mock ()
250
- value = obj . getitem_db ( key = 'varvar' )
251
- obj .__context_class__ . get_resource .assert_called_once_with (
252
- myname = 'varvar' )
253
- obj .context_acl .assert_called_once_with (
254
- obj .__context_class__ . get_resource ())
255
- assert value .__acl__ == obj .context_acl ()
247
+ obj .item_model = Mock ()
248
+ obj .item_model .pk_field .return_value = 'myname'
249
+ obj .item_acl = Mock ()
250
+ value = obj [ 'varvar' ]
251
+ obj .item_model . get .assert_called_once_with (
252
+ __raise = True , myname = 'varvar' )
253
+ obj .item_acl .assert_called_once_with (
254
+ obj .item_model . get ())
255
+ assert value .__acl__ == obj .item_acl ()
256
256
assert value .__parent__ is obj
257
257
assert value .__name__ == 'varvar'
258
258
259
- @patch ('nefertari.elasticsearch .ES' )
259
+ @patch ('ramses.acl .ES' )
260
260
def test_getitem_es (self , mock_es ):
261
261
found_obj = Mock ()
262
262
es_obj = Mock ()
263
263
es_obj .get_resource .return_value = found_obj
264
264
mock_es .return_value = es_obj
265
265
obj = acl .BaseACL ('req' )
266
- obj .__context_class__ = Mock (__name__ = 'Foo' )
267
- obj .__context_class__ .pk_field .return_value = 'myname'
268
- obj .context_acl = Mock ()
266
+ obj .item_model = Mock (__name__ = 'Foo' )
267
+ obj .item_model .pk_field .return_value = 'myname'
268
+ obj .item_acl = Mock ()
269
269
value = obj .getitem_es (key = 'varvar' )
270
270
mock_es .assert_called_with ('Foo' )
271
271
es_obj .get_resource .assert_called_once_with (id = 'varvar' )
272
- obj .context_acl .assert_called_once_with (found_obj )
273
- assert value .__acl__ == obj .context_acl ()
272
+ obj .item_acl .assert_called_once_with (found_obj )
273
+ assert value .__acl__ == obj .item_acl ()
274
274
assert value .__parent__ is obj
275
275
assert value .__name__ == 'varvar'
0 commit comments