Skip to content

Commit

Permalink
Modify test_positive_import_all_roles to cover non-admin scenario
Browse files Browse the repository at this point in the history
Signed-off-by: Gaurav Talreja <[email protected]>
  • Loading branch information
Gauravtalreja1 committed May 28, 2024
1 parent b12bfbc commit 7b15ecf
Showing 1 changed file with 21 additions and 2 deletions.
23 changes: 21 additions & 2 deletions tests/foreman/destructive/test_ansible.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
from fauxfactory import gen_string
import pytest

from robottelo.config import settings

pytestmark = [pytest.mark.destructive, pytest.mark.upgrade]


Expand Down Expand Up @@ -45,7 +47,8 @@ def test_positive_persistent_ansible_cfg_change(target_sat):
assert param in target_sat.execute(f'cat {ansible_cfg}').stdout.splitlines()


def test_positive_import_all_roles(target_sat):
@pytest.mark.parametrize('auth_type', ['admin', 'non-admin'])
def test_positive_import_all_roles(request, target_sat, function_org, auth_type):
"""Import all Ansible roles available by default.
:id: 53fe3857-a08f-493d-93c7-3fed331ed391
Expand All @@ -63,7 +66,23 @@ def test_positive_import_all_roles(target_sat):
:expectedresults: All roles are imported successfully. One role is deleted successfully.
"""
with target_sat.ui_session() as session:
password = settings.server.admin_password
if auth_type == 'non-admin':
ansible_manager_role = target_sat.api.Role().search(
query={'search': 'name="Ansible Roles Manager"'}
)
username = gen_string('alphanumeric')
user = target_sat.api.User(
role=ansible_manager_role,
admin=True,
login=username,
password=password,
organization=[function_org],
).create()
request.addfinalizer(user.delete)
username = user.login if auth_type == 'non-admin' else settings.server.admin_username
with target_sat.ui_session(user=username, password=password) as session:
session.organization.select(function_org.name)
assert session.ansibleroles.import_all_roles() == session.ansibleroles.imported_roles_count
assert int(session.ansiblevariables.read_total_variables()) > 0
# The choice of role to be deleted is arbitrary; any of the roles present on Satellite
Expand Down

0 comments on commit 7b15ecf

Please sign in to comment.