Пример #1
0
 def test_stringify_acl(self, mock_perm, mock_id, mock_action):
     obj = ACLEncoderMixin()
     mock_action.return_value = 1
     mock_id.return_value = 2
     mock_perm.return_value = [3, 4]
     result = obj.stringify_acl([('a', 'b', 'c')])
     assert result == [
         {'action': 1, 'principal': 2, 'permission': 3},
         {'action': 1, 'principal': 2, 'permission': 4},
     ]
     mock_action.assert_called_once_with('a')
     mock_id.assert_called_once_with('b')
     mock_perm.assert_called_once_with('c')
Пример #2
0
 def test_objectify_acl(self, mock_perm, mock_id, mock_action):
     mock_action.return_value = 1
     mock_id.return_value = 2
     mock_perm.return_value = [3]
     result = ACLEncoderMixin.objectify_acl([
         {'action': 'a', 'principal': 'b', 'permission': 'c'}
     ])
     assert result == [[1, 2, [3]]]
     mock_action.assert_called_once_with('a')
     mock_id.assert_called_once_with('b')
     mock_perm.assert_called_once_with('c')
Пример #3
0
 def test_stringify_acl(self, mock_perm, mock_id, mock_action):
     obj = ACLEncoderMixin()
     mock_action.return_value = 1
     mock_id.return_value = 2
     mock_perm.return_value = [3, 4]
     result = obj.stringify_acl([('a', 'b', 'c')])
     assert result == [
         {
             'action': 1,
             'principal': 2,
             'permission': 3
         },
         {
             'action': 1,
             'principal': 2,
             'permission': 4
         },
     ]
     mock_action.assert_called_once_with('a')
     mock_id.assert_called_once_with('b')
     mock_perm.assert_called_once_with('c')
Пример #4
0
 def test_objectify_acl(self, mock_perm, mock_id, mock_action):
     mock_action.return_value = 1
     mock_id.return_value = 2
     mock_perm.return_value = [3]
     result = ACLEncoderMixin.objectify_acl([{
         'action': 'a',
         'principal': 'b',
         'permission': 'c'
     }])
     assert result == [[1, 2, [3]]]
     mock_action.assert_called_once_with('a')
     mock_id.assert_called_once_with('b')
     mock_perm.assert_called_once_with('c')
Пример #5
0
 def test_objectify_permission(self):
     assert ACLEncoderMixin._objectify_permission('all') == ALL_PERMISSIONS
     assert ACLEncoderMixin._objectify_permission('foo') == 'foo'
Пример #6
0
 def test_objectify_permission(self):
     assert ACLEncoderMixin._objectify_permission(
         'all') == ALL_PERMISSIONS
     assert ACLEncoderMixin._objectify_permission('foo') == 'foo'
Пример #7
0
 def test_objectify_principal(self):
     assert ACLEncoderMixin._objectify_principal('everyone') is Everyone
     assert ACLEncoderMixin._objectify_principal(
         'authenticated') is Authenticated
     assert ACLEncoderMixin._objectify_principal('foo') == 'foo'
Пример #8
0
 def test_validate_permission_valid(self):
     obj = ACLEncoderMixin()
     try:
         obj._validate_permission(list(NEF_PERMISSIONS.values())[0])
     except ValueError:
         raise Exception('Unexpected error')
Пример #9
0
 def test_stringify_principal(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal('g:admin') == 'g:admin'
Пример #10
0
 def test_stringify_action_nonexisting(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action('not allow') == 'not allow'
Пример #11
0
 def test_validate_acl(self, mock_perm, mock_action):
     obj = ACLEncoderMixin()
     obj.validate_acl([{'action': 1, 'principal': 2, 'permission': 3}])
     mock_action.assert_called_once_with(1)
     mock_perm.assert_called_once_with(3)
Пример #12
0
 def test_stringify_principal(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal('g:admin') == 'g:admin'
Пример #13
0
 def test_stringify_principal_special(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal(Everyone) == 'everyone'
     assert obj._stringify_principal(Authenticated) == 'authenticated'
Пример #14
0
 def test_stringify_action_nonexisting(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action('not allow') == 'not allow'
Пример #15
0
 def test_stringify_action_existing(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action(Deny) == 'deny'
     assert obj._stringify_action(Allow) == 'allow'
Пример #16
0
 def test_validate_acl(self, mock_perm, mock_action):
     obj = ACLEncoderMixin()
     obj.validate_acl([{'action': 1, 'principal': 2, 'permission': 3}])
     mock_action.assert_called_once_with(1)
     mock_perm.assert_called_once_with(3)
Пример #17
0
 def test_validate_permission_invalid(self):
     obj = ACLEncoderMixin()
     with pytest.raises(ValueError) as ex:
         obj._validate_permission('foobarbaz')
     expected = 'Invalid ACL permission value: foobarbaz. Valid values are:'
     assert expected in str(ex.value)
Пример #18
0
 def test_validate_permission_valid(self):
     obj = ACLEncoderMixin()
     try:
         obj._validate_permission(list(NEF_PERMISSIONS.values())[0])
     except ValueError:
         raise Exception('Unexpected error')
Пример #19
0
 def test_validate_permission_invalid(self):
     obj = ACLEncoderMixin()
     with pytest.raises(ValueError) as ex:
         obj._validate_permission('foobarbaz')
     expected = 'Invalid ACL permission value: foobarbaz. Valid values are:'
     assert expected in str(ex.value)
Пример #20
0
 def test_stringify_permissions_regular_string(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_permissions('Foo  ') == ['foo']
Пример #21
0
 def test_stringify_action_existing(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action(Deny) == 'deny'
     assert obj._stringify_action(Allow) == 'allow'
Пример #22
0
 def test_stringify_permissions_special(self):
     obj = ACLEncoderMixin()
     perms = obj._stringify_permissions(['foo', ALL_PERMISSIONS])
     assert sorted(perms) == ['all', 'foo']
Пример #23
0
 def test_stringify_principal_special(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal(Everyone) == 'everyone'
     assert obj._stringify_principal(Authenticated) == 'authenticated'
Пример #24
0
 def test_stringify_permissions_special(self):
     obj = ACLEncoderMixin()
     perms = obj._stringify_permissions(['foo', ALL_PERMISSIONS])
     assert sorted(perms) == ['all', 'foo']
Пример #25
0
 def test_stringify_permissions_regular_string(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_permissions('Foo  ') == ['foo']
Пример #26
0
 def test_objectify_action(self):
     assert ACLEncoderMixin._objectify_action('allow') is Allow
     assert ACLEncoderMixin._objectify_action('deny') is Deny
Пример #27
0
 def test_objectify_action(self):
     assert ACLEncoderMixin._objectify_action('allow') is Allow
     assert ACLEncoderMixin._objectify_action('deny') is Deny
Пример #28
0
 def test_validate_action_valid(self):
     obj = ACLEncoderMixin()
     try:
         obj._validate_action(list(obj.ACTIONS.values())[0])
     except ValueError:
         raise Exception('Unexpected error')
Пример #29
0
 def test_objectify_principal(self):
     assert ACLEncoderMixin._objectify_principal(
         'everyone') is Everyone
     assert ACLEncoderMixin._objectify_principal(
         'authenticated') is Authenticated
     assert ACLEncoderMixin._objectify_principal('foo') == 'foo'
Пример #30
0
 def test_validate_action_valid(self):
     obj = ACLEncoderMixin()
     try:
         obj._validate_action(list(obj.ACTIONS.values())[0])
     except ValueError:
         raise Exception('Unexpected error')