diff --git a/ymir/agents/tests/e2e/test_triage.py b/ymir/agents/tests/e2e/test_triage.py index d6fa1baa..0a20cff9 100644 --- a/ymir/agents/tests/e2e/test_triage.py +++ b/ymir/agents/tests/e2e/test_triage.py @@ -16,7 +16,7 @@ load_all_fixture_configs, setup_mock_repos, ) -from ymir.common.models import BackportData, RebaseData, Resolution, TriageOutputSchema +from ymir.common.models import BackportData, NotAffectedData, RebaseData, Resolution, TriageOutputSchema logger = logging.getLogger(__name__) @@ -150,6 +150,16 @@ def testing_factory(gateway_tools, local_tool_options=None): ), ), ), + TriageAgentTestCase( + input="RHEL-174694", + expected_output=TriageOutputSchema( + resolution=Resolution.NOT_AFFECTED, + data=NotAffectedData( + explanation="not-implemented", + jira_issue="RHEL-174694", + ), + ), + ), ] @@ -234,12 +244,17 @@ def test_triage_agent(test_case: TriageAgentTestCase): real_output = test_case.finished_state.triage_result expected_output = test_case.expected_output assert real_output.resolution == expected_output.resolution - assert real_output.data.package == expected_output.data.package assert real_output.data.jira_issue == expected_output.data.jira_issue - assert real_output.data.fix_version == expected_output.data.fix_version if expected_output.resolution == Resolution.BACKPORT: + assert real_output.data.package == expected_output.data.package + assert real_output.data.fix_version == expected_output.data.fix_version assert real_output.data.patch_urls == expected_output.data.patch_urls assert real_output.data.cve_id == expected_output.data.cve_id elif expected_output.resolution == Resolution.REBASE: + assert real_output.data.package == expected_output.data.package + assert real_output.data.fix_version == expected_output.data.fix_version assert real_output.data.version == expected_output.data.version + elif expected_output.resolution == Resolution.NOT_AFFECTED: + # TODO: validate justification_category against a known set of values + assert real_output.data.explanation