+++ /dev/null
-import pytest
-import uuid
-
-from .. import base
-from juju.controller import Controller
-from juju.errors import JujuAPIError
-
-
-@base.bootstrapped
-@pytest.mark.asyncio
-async def test_add_user(event_loop):
- async with base.CleanController() as controller:
- username = 'test{}'.format(uuid.uuid4())
- await controller.add_user(username)
- result = await controller.get_user(username)
- res_ser = result.serialize()['results'][0].serialize()
- assert res_ser['result'] is not None
-
-
-@base.bootstrapped
-@pytest.mark.asyncio
-async def test_disable_enable_user(event_loop):
- async with base.CleanController() as controller:
- username = 'test-disable{}'.format(uuid.uuid4())
- await controller.add_user(username)
- await controller.disable_user(username)
- result = await controller.get_user(username)
- res_ser = result.serialize()['results'][0].serialize()
- assert res_ser['result'].serialize()['disabled'] is True
- await controller.enable_user(username)
- result = await controller.get_user(username)
- res_ser = result.serialize()['results'][0].serialize()
- assert res_ser['result'].serialize()['disabled'] is False
-
-
-@base.bootstrapped
-@pytest.mark.asyncio
-async def test_change_user_password(event_loop):
- async with base.CleanController() as controller:
- username = 'test-password{}'.format(uuid.uuid4())
- await controller.add_user(username)
- await controller.change_user_password(username, 'password')
- try:
- new_controller = Controller()
- await new_controller.connect(
- controller.connection.endpoint, username, 'password')
- result = True
- await new_controller.disconnect()
- except JujuAPIError:
- result = False
- assert result is True
-
-
-@base.bootstrapped
-@pytest.mark.asyncio
-async def test_grant(event_loop):
- async with base.CleanController() as controller:
- username = 'test-grant{}'.format(uuid.uuid4())
- await controller.add_user(username)
- await controller.grant(username, 'superuser')
- result = await controller.get_user(username)
- result = result.serialize()['results'][0].serialize()['result']\
- .serialize()
- assert result['access'] == 'superuser'
- await controller.grant(username, 'login')
- result = await controller.get_user(username)
- result = result.serialize()['results'][0].serialize()['result']\
- .serialize()
- assert result['access'] == 'login'
-
-
-@base.bootstrapped
-@pytest.mark.asyncio
-async def test_get_models(event_loop):
- async with base.CleanController() as controller:
- result = await controller.get_models()
- assert isinstance(result.serialize()['user-models'], list)