Exemple #1
0
def test_ipa_client_skip_errors(ipa_call_error):
    with patch("noggin.security.ipa.Client._request") as request:
        request.return_value = ipa_call_error
        client = Client("ipa.example.com")
        result = client.group_add_member_manager("dummy-group",
                                                 users="dummy",
                                                 skip_errors=True)
        assert result == "call-result"
Exemple #2
0
def test_ipa_client_with_errors(ipa_call_error):
    with patch("noggin.security.ipa.Client._request") as request:
        request.return_value = ipa_call_error
        client = Client("ipa.example.com")
        result = client.group_add_member_manager(a_cn="dummy-group",
                                                 o_user="******")
        assert result['failed'] == {
            'member': {
                'group': [],
                'user': ['this is an error']
            }
        }
Exemple #3
0
def test_ipa_client_with_errors(ipa_call_error):
    with patch("noggin.security.ipa.Client._request") as request:
        request.return_value = ipa_call_error
        client = Client("ipa.example.com")
        with pytest.raises(ValidationError):
            client.group_add_member_manager("dummy-group", users="dummy")
Exemple #4
0
            o_userpassword=USER_PASSWORD,
            fasircnick=[username, username + "_"],
            faslocale="en-US",
            fastimezone=fake.random_sample(timezones.TIMEZONES, length=1)[0],
            fasstatusnote="active",
            fasgpgkeyid=[],
        )
        # 'change' the password as the user, so its not expired
        untouched_ipa.change_password(username,
                                      new_password=USER_PASSWORD,
                                      old_password=USER_PASSWORD)
        if x % 3 == 0:
            # User must have signed FPCA before being added to developers
            ipa.fasagreement_add_user("FPCA", user=username)
            ipa.group_add_member(a_cn="developers", o_user=username)
            if x < 10:
                ipa.group_add_member_manager(a_cn="developers",
                                             o_user=username)
        if x % 5 == 0:
            # User must have signed FPCA and CentOS before being added to designers
            ipa.fasagreement_add_user("FPCA", user=username)
            ipa.fasagreement_add_user("CentOS Agreement", user=username)

            ipa.group_add_member(a_cn="designers", o_user=username)
            if x <= 15:
                ipa.group_add_member_manager(a_cn="designers", o_user=username)
        if x % 2 == 0:
            ipa.group_add_member(a_cn="admins", o_user=username)
    except python_freeipa.exceptions.FreeIPAError as e:
        print(e)
Exemple #5
0
            fasircnick=[username, username + "_"],
            faslocale="en-US",
            fastimezone=fake.random_sample(timezones.TIMEZONES, length=1)[0],
            fasgpgkeyid=[],
        )
        # 'change' the password as the user, so its not expired
        untouched_ipa.change_password(
            username,
            new_password=USER_PASSWORD,
            old_password=USER_PASSWORD,
        )
        if x % 3 == 0:
            ipa.group_add_member("developers", username, skip_errors=True)
            if x < 10:
                ipa.group_add_member_manager("developers",
                                             users=username,
                                             skip_errors=True)
        if x % 2 == 0:
            ipa.group_add_member("admins", username, skip_errors=True)
    except python_freeipa.exceptions.FreeIPAError as e:
        print(e)

# add a known user for testing purposes

try:
    ipa.user_add(
        "testuser",
        "Test",
        "User",
        "Test User",
        home_directory=f"/home/fedora/testUser",