import pytest

from keycloak import KeycloakAdmin, KeycloakOpenID


@pytest.fixture
def keycloak_admin(settings):
    admin = KeycloakAdmin(**settings.KEYCLOAK['admin'])
    yield admin


@pytest.fixture
def keycloak(settings):
    keycloak = KeycloakOpenID(**settings.KEYCLOAK['openid_client'])
    yield keycloak


@pytest.fixture
def user(keycloak):
    new_user = keycloak.create_user({
        'email': 'emma.goldman@ccee.coop',
        'username': 'emma.goldman',
        'enabled': True,
        'firstName': 'Emma',
        'lastName': 'Goldman'
    })
    return new_user


@pytest.fixture
def auth_token(keycloack):
    # Not implemented yet
    pass