diff options
-rw-r--r-- | qvisqve/authn_entity_manager.py | 18 | ||||
-rw-r--r-- | qvisqve/authn_entity_manager_tests.py | 36 |
2 files changed, 27 insertions, 27 deletions
diff --git a/qvisqve/authn_entity_manager.py b/qvisqve/authn_entity_manager.py index 68d0c3e..f84634c 100644 --- a/qvisqve/authn_entity_manager.py +++ b/qvisqve/authn_entity_manager.py @@ -56,21 +56,21 @@ class AuthenticatingEntityManager(qvisqve.EntityManager): entity_id=entity_id) return True + def set_allowed_scopes(self, entity_id, scopes): + entity = self.get(entity_id) + entity['allowed_scopes'] = scopes + self.create(entity_id, entity) + + def get_allowed_scopes(self, entity_id): + entity = self.get(entity_id) + return entity.get('allowed_scopes', []) + class ClientManager(AuthenticatingEntityManager): def __init__(self, rs): super().__init__(rs, 'client') - def set_allowed_scopes(self, client_id, scopes): - client = self.get(client_id) - client['allowed_scopes'] = scopes - self.create(client_id, client) - - def get_allowed_scopes(self, client_id): - client = self.get(client_id) - return client.get('allowed_scopes', []) - class UserManager(AuthenticatingEntityManager): diff --git a/qvisqve/authn_entity_manager_tests.py b/qvisqve/authn_entity_manager_tests.py index d46cd03..0d51d4b 100644 --- a/qvisqve/authn_entity_manager_tests.py +++ b/qvisqve/authn_entity_manager_tests.py @@ -55,6 +55,24 @@ class AuthenticatingEntityManagerTests(unittest.TestCase): self.assertFalse(self.aem.is_valid_secret(client['id'], 'invalid')) self.assertTrue(self.aem.is_valid_secret(client['id'], secret)) + def test_returns_empty_list_of_scopes_initially(self): + client = { + 'id': 'test-client', + } + + self.aem.create(client['id'], client) + self.assertEqual(self.aem.get_allowed_scopes(client['id']), []) + + def test_sets_allowed_scopes(self): + client = { + 'id': 'test-client', + } + scopes = ['foo', 'bar'] + + self.aem.create(client['id'], client) + self.aem.set_allowed_scopes(client['id'], scopes) + self.assertEqual(self.aem.get_allowed_scopes(client['id']), scopes) + class ClientManagerTests(unittest.TestCase): @@ -76,24 +94,6 @@ class ClientManagerTests(unittest.TestCase): self.cm.set_secret(client['id'], secret) self.assertTrue(self.cm.is_valid_secret(client['id'], secret)) - def test_returns_empty_list_of_scopes_initially(self): - client = { - 'id': 'test-client', - } - - self.cm.create(client['id'], client) - self.assertEqual(self.cm.get_allowed_scopes(client['id']), []) - - def test_sets_allowed_scopes(self): - client = { - 'id': 'test-client', - } - scopes = ['foo', 'bar'] - - self.cm.create(client['id'], client) - self.cm.set_allowed_scopes(client['id'], scopes) - self.assertEqual(self.cm.get_allowed_scopes(client['id']), scopes) - class UserManagerTests(unittest.TestCase): |