Skip to content

Commit

Permalink
fix(RHINENG-1284): Fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jpramos123 committed Jul 31, 2023
1 parent 34391c8 commit 36204de
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 17 deletions.
4 changes: 2 additions & 2 deletions tests/fixtures/db_fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ def _db_get_groups_for_host(host_id):

@pytest.fixture(scope="function")
def db_get_assignment_rule(flask_app):
def _db_get_assignment_rule(ar_id):
return AssignmentRule.query.get(ar_id)
def _db_get_assignment_rule(ar_id, group_id):
return AssignmentRule.query.get((ar_id, group_id))

return _db_get_assignment_rule

Expand Down
10 changes: 4 additions & 6 deletions tests/test_api_assignment_rules_create.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
import pytest

from tests.helpers.api_utils import assert_assign_rule_response
from tests.helpers.api_utils import assert_response_status
from tests.helpers.api_utils import create_mock_rbac_response
Expand Down Expand Up @@ -63,9 +61,8 @@ def test_create_assignment_rule_group_not_exists(api_create_assign_rule):
assert assign_rule_data["group_id"] in response_data["detail"]


@pytest.mark.skip(reason="Need to validate why the test is creating duplicates in the DB")
def test_create_assignemnt_rule_same_name(api_create_assign_rule, db_create_group):
group = db_create_group("my_group")
group = db_create_group("mygroup")
assign_rule_data = {
"name": "myRule1",
"description": "something",
Expand All @@ -75,13 +72,14 @@ def test_create_assignemnt_rule_same_name(api_create_assign_rule, db_create_grou
},
"enabled": True,
}

response_status, _ = api_create_assign_rule(assign_rule_data)
response_status, response_data = api_create_assign_rule(assign_rule_data)

assert_response_status(response_status, expected_status=400)
assert assign_rule_data["name"] in response_data["detail"]


@pytest.mark.skip(reason="Need to validate why the test is creating duplicates in the DB")
def test_create_assignemnt_rule_same_group(api_create_assign_rule, db_create_group):
group = db_create_group("my_group")
assign_rule_data = {
Expand All @@ -100,7 +98,7 @@ def test_create_assignemnt_rule_same_group(api_create_assign_rule, db_create_gro
response_status, _ = api_create_assign_rule(assign_rule_data)
response_status, response_data = api_create_assign_rule(assign_rule_same_group)
assert_response_status(response_status, expected_status=400)
assert group in response_data["detail"]
assert assign_rule_data["group_id"] in response_data["detail"]


def test_create_assignment_rule_RBAC_denied(subtests, mocker, api_create_assign_rule, db_create_group, enable_rbac):
Expand Down
12 changes: 6 additions & 6 deletions tests/test_api_assignment_rules_get.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@


def test_basic_assignment_rule_query(db_create_assignment_rule, db_create_group, api_get):
group = db_create_group("TestGroup")
groups = [db_create_group(f"TestGroup_{i}") for i in range(3)]
filter = {"AND": [{"fqdn": {"eq": "foo.bar.com"}}]}

assignment_rule_id_list = [
str(db_create_assignment_rule(f"assignment {idx}", group.id, filter, True).id) for idx in range(3)
str(db_create_assignment_rule(f"assignment {idx}", groups[idx].id, filter, True).id) for idx in range(3)
]
response_status, response_data = api_get(build_assignment_rules_url())

Expand Down Expand Up @@ -38,10 +38,10 @@ def test_get_assignment_rule_by_name(db_create_assignment_rule, db_create_group,


def test_get_assignment_rule_with_bad_name(db_create_assignment_rule, db_create_group, api_get):
group = db_create_group("TestGroup")
groups = [db_create_group(f"TestGroup_{i}") for i in range(3)]
filter = {"AND": [{"fqdn": {"eq": "foo.bar.com"}}]}

_ = [db_create_assignment_rule(f"assignment {idx}", group.id, filter, True).id for idx in range(3)]
_ = [db_create_assignment_rule(f"assignment {idx}", groups[idx].id, filter, True).id for idx in range(3)]

response_status, response_data = api_get(build_assignment_rules_url())
assert response_status == 200
Expand All @@ -66,10 +66,10 @@ def test_get_assignment_rule_with_bad_name(db_create_assignment_rule, db_create_
),
)
def test_order_by_and_order_how(db_create_assignment_rule, db_create_group, api_get, order_by, order_how):
group = db_create_group("TestGroup")
groups = [db_create_group(f"TestGroup_{i}") for i in range(3)]
filter = {"AND": [{"fqdn": {"eq": "foo.bar.com"}}]}

_ = [db_create_assignment_rule(f"assignment {idx}", group.id, filter, True) for idx in range(3)]
_ = [db_create_assignment_rule(f"assignment {idx}", groups[idx].id, filter, True).id for idx in range(3)]

_, response_data = api_get(build_assignment_rules_url())
assert len(response_data["results"]) == 3
Expand Down
6 changes: 3 additions & 3 deletions tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -653,7 +653,7 @@ def test_create_assignment_rule(db_create_group, db_create_assignment_rule, db_g
group = db_create_group(group_name)

ar = db_create_assignment_rule("default assignment", group.id, {"AND": [{"fqdn": {"eq": "foo.bar.com"}}]}, True)
assert db_get_assignment_rule(ar.id)
assert db_get_assignment_rule(ar.id, group.id)


def test_delete_assignment_rule(
Expand All @@ -663,10 +663,10 @@ def test_delete_assignment_rule(
group = db_create_group(group_name)

ar = db_create_assignment_rule("default assignment", group.id, {"AND": [{"fqdn": {"eq": "foo.bar.com"}}]}, True)
assert db_get_assignment_rule(ar.id)
assert db_get_assignment_rule(ar.id, group.id)

db_delete_assignment_rule(ar.id)
assert not db_get_assignment_rule(ar.id)
assert not db_get_assignment_rule(ar.id, group.id)


def test_create_default_account_staleness_culling(
Expand Down

0 comments on commit 36204de

Please sign in to comment.