Source code for fasjson.tests.unit.test_web_util_ipa

import pytest
from flask import g
from werkzeug.exceptions import Unauthorized

from fasjson.web.utils.ipa import ldap_client, rpc_client


[docs] def test_ldap_client(mocker, gss_user, app): get_client = mocker.patch("fasjson.web.utils.ipa.get_client") with app.test_request_context("/v1/me/"): app.preprocess_request() g.gss_creds = object() g.username = "dummy" ldap_client() get_client.assert_called_with( "ldap://ipa.example.test", basedn="dc=example,dc=test", login="dummy", timeout=30, )
[docs] def test_ldap_client_anon(mocker, gss_user, app): get_client = mocker.patch("fasjson.web.utils.ipa.get_client") with app.test_request_context("/v1/me/"): app.preprocess_request() g.gss_creds = None with pytest.raises(Unauthorized): ldap_client() get_client.assert_not_called()
[docs] def test_rpc_client(mocker, gss_user, app): ClientMeta = mocker.patch("fasjson.web.utils.ipa.ClientMeta") client = mocker.Mock() ClientMeta.return_value = client with app.test_request_context("/v1/me/"): app.preprocess_request() g.gss_creds = object() rpc_client() ClientMeta.assert_called_once_with( "ipa.example.test", verify_ssl=app.config["FASJSON_IPA_CA_CERT_PATH"] ) client.login_kerberos.assert_called_once_with()
[docs] def test_rpc_client_anon(mocker, gss_user, app): ClientMeta = mocker.patch("fasjson.web.utils.ipa.ClientMeta") with app.test_request_context("/v1/me/"): app.preprocess_request() g.gss_creds = None with pytest.raises(Unauthorized): rpc_client() ClientMeta.assert_not_called()