Exemplo n.º 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')
Exemplo n.º 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')
Exemplo n.º 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')
Exemplo n.º 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')
Exemplo n.º 5
0
 def test_objectify_permission(self):
     assert ACLEncoderMixin._objectify_permission('all') == ALL_PERMISSIONS
     assert ACLEncoderMixin._objectify_permission('foo') == 'foo'
Exemplo n.º 6
0
 def test_objectify_permission(self):
     assert ACLEncoderMixin._objectify_permission(
         'all') == ALL_PERMISSIONS
     assert ACLEncoderMixin._objectify_permission('foo') == 'foo'
Exemplo n.º 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'
Exemplo n.º 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')
Exemplo n.º 9
0
 def test_stringify_principal(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal('g:admin') == 'g:admin'
Exemplo n.º 10
0
 def test_stringify_action_nonexisting(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action('not allow') == 'not allow'
Exemplo n.º 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)
Exemplo n.º 12
0
 def test_stringify_principal(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal('g:admin') == 'g:admin'
Exemplo n.º 13
0
 def test_stringify_principal_special(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal(Everyone) == 'everyone'
     assert obj._stringify_principal(Authenticated) == 'authenticated'
Exemplo n.º 14
0
 def test_stringify_action_nonexisting(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action('not allow') == 'not allow'
Exemplo n.º 15
0
 def test_stringify_action_existing(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action(Deny) == 'deny'
     assert obj._stringify_action(Allow) == 'allow'
Exemplo n.º 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)
Exemplo n.º 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)
Exemplo n.º 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')
Exemplo n.º 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)
Exemplo n.º 20
0
 def test_stringify_permissions_regular_string(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_permissions('Foo  ') == ['foo']
Exemplo n.º 21
0
 def test_stringify_action_existing(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_action(Deny) == 'deny'
     assert obj._stringify_action(Allow) == 'allow'
Exemplo n.º 22
0
 def test_stringify_permissions_special(self):
     obj = ACLEncoderMixin()
     perms = obj._stringify_permissions(['foo', ALL_PERMISSIONS])
     assert sorted(perms) == ['all', 'foo']
Exemplo n.º 23
0
 def test_stringify_principal_special(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_principal(Everyone) == 'everyone'
     assert obj._stringify_principal(Authenticated) == 'authenticated'
Exemplo n.º 24
0
 def test_stringify_permissions_special(self):
     obj = ACLEncoderMixin()
     perms = obj._stringify_permissions(['foo', ALL_PERMISSIONS])
     assert sorted(perms) == ['all', 'foo']
Exemplo n.º 25
0
 def test_stringify_permissions_regular_string(self):
     obj = ACLEncoderMixin()
     assert obj._stringify_permissions('Foo  ') == ['foo']
Exemplo n.º 26
0
 def test_objectify_action(self):
     assert ACLEncoderMixin._objectify_action('allow') is Allow
     assert ACLEncoderMixin._objectify_action('deny') is Deny
Exemplo n.º 27
0
 def test_objectify_action(self):
     assert ACLEncoderMixin._objectify_action('allow') is Allow
     assert ACLEncoderMixin._objectify_action('deny') is Deny
Exemplo n.º 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')
Exemplo n.º 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'
Exemplo n.º 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')