Beispiel #1
0
def test_register_token_to_resolver_raises_resolver_error_if_request_error(
        requests_mock):
    requests_mock.post(url='/1.0/register', exc=RequestException)
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverError) as err_wrapper:
        requester.register_token('a token')
    assert isinstance(err_wrapper.value.__cause__, RequestException)
Beispiel #2
0
def test_get_token_from_resolver_raises_resolver_error_if_request_error(
        requests_mock, doc_did):
    requests_mock.get(url=f'/1.0/discover/{doc_did}', exc=RequestException)
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverError) as err_wrapper:
        requester.get_token(doc_did)
    assert isinstance(err_wrapper.value.__cause__, RequestException)
Beispiel #3
0
def test_register_token_to_resolver_raises_timeout_error_if_connection_timeout(
        requests_mock):
    requests_mock.post(url='/1.0/register', exc=ConnectTimeout)
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverTimeoutError) as err_wrapper:
        requester.register_token('a token')
    assert isinstance(err_wrapper.value.__cause__, ConnectTimeout)
Beispiel #4
0
def test_can_register_token_to_resolver(requests_mock):
    a_token = 'the value doesn\'t matter here'

    requests_mock.post(
        '/1.0/register',
        headers={'Content-type': 'text/plain'},
    )
    requester = RESTResolverRequester(address='http://ploptest')
    requester.register_token(a_token)

    assert requests_mock.request_history[0].body == a_token
Beispiel #5
0
def test_get_token_from_resolver_raises_not_found_error_if_http_not_found(
        requests_mock, doc_did):
    requests_mock.get(
        f'/1.0/discover/{doc_did}',
        json={},
        status_code=404,
    )
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverDocNotFoundError) as err_wrapper:
        requester.get_token(doc_did)
    assert isinstance(err_wrapper.value.__cause__, HTTPError)
Beispiel #6
0
def test_register_token_to_resolver_raises_resolver_error_if_http_error(
        requests_mock):
    requests_mock.post(
        '/1.0/register',
        headers={'Content-type': 'text/plain'},
        json={},
        status_code=400,
    )
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverError) as err_wrapper:
        requester.register_token('a token')
    assert isinstance(err_wrapper.value.__cause__, HTTPError)
Beispiel #7
0
def test_get_token_from_resolver_raises_resolver_error_if_inconsistent_response(
        requests_mock, doc_did):
    requests_mock.get(f'/1.0/discover/{doc_did}', json={'plop': 12})
    requester = RESTResolverRequester(address='http://ploptest')
    with pytest.raises(IdentityResolverError):
        requester.get_token(doc_did)
Beispiel #8
0
def test_can_get_token_from_resolver(requests_mock, doc_did):
    a_token = 'the value doesn\'t matter here'
    requests_mock.get(f'/1.0/discover/{doc_did}', json={'token': a_token})
    requester = RESTResolverRequester(address='http://ploptest')
    token = requester.get_token(doc_did)
    assert token == a_token