diff --git a/pytest_splunk_addon/addon_parser/transforms_parser.py b/pytest_splunk_addon/addon_parser/transforms_parser.py index 760ca0549..34fc80e1f 100644 --- a/pytest_splunk_addon/addon_parser/transforms_parser.py +++ b/pytest_splunk_addon/addon_parser/transforms_parser.py @@ -23,6 +23,7 @@ import re import os import csv +import sys import addonfactory_splunk_conf_parser_lib as conf_parser @@ -114,6 +115,9 @@ def get_transform_fields(self, transforms_stanza: str) -> Optional[Generator]: LOGGER.error( f"The stanza {transforms_stanza} does not exists in transforms.conf." ) + sys.exit( + f"The stanza {transforms_stanza} does not exists in transforms.conf." + ) def get_lookup_csv_fields(self, lookup_stanza: str) -> Optional[Generator]: """ diff --git a/tests/e2e/addons/TA_broken/default/props.conf b/tests/e2e/addons/TA_broken/default/props.conf index cd24561b9..be23e16e8 100644 --- a/tests/e2e/addons/TA_broken/default/props.conf +++ b/tests/e2e/addons/TA_broken/default/props.conf @@ -58,8 +58,7 @@ LOOKUP-PASS_test_lookup_not_found = broken-NaN_lookup FAIL_component FAIL_broken REPORT-broken-FAIL_tsc-delim-fields = broken-tsc-delim-fields REPORT-broken-PASS_tsc-sk-regex-format = broken-tsc-sk-regex-format REPORT-broken-FAIL_tsc-sk-delim-format = broken-contact_mode_extract -# If a non_existing stanza is present then no testcases are generated for it. -REPORT-broken-FAIL_tsc-regex-format = broken-tsc-regex-format, broken-non_existing_transforms_stanza +REPORT-broken-FAIL_tsc-regex-format = broken-tsc-regex-format # Component tested: FIELDALIAS # Scenario: Plugin searches for the original field and one or more alias field names. diff --git a/tests/unit/tests_standard_lib/test_addon_parser/test_transforms_parser.py b/tests/unit/tests_standard_lib/test_addon_parser/test_transforms_parser.py index 18d6497c7..13c2cf82e 100644 --- a/tests/unit/tests_standard_lib/test_addon_parser/test_transforms_parser.py +++ b/tests/unit/tests_standard_lib/test_addon_parser/test_transforms_parser.py @@ -61,13 +61,14 @@ def test_no_transforms_config_file(): assert transforms_parser.transforms is None -def test_stanza_does_not_exist_in_transforms(caplog): +def test_stanza_does_not_exist_in_transforms(): transforms_conf_path = os.path.join(os.path.dirname(__file__), "testdata") transforms_parser = TransformsParser(transforms_conf_path) - for result in transforms_parser.get_transform_fields("dummy_stanza"): - assert result is None - assert ( - "The stanza dummy_stanza does not exists in transforms.conf." in caplog.messages + with pytest.raises(SystemExit) as excinfo: + for result in transforms_parser.get_transform_fields("dummy_stanza"): + assert result is None + assert "The stanza dummy_stanza does not exists in transforms.conf." == str( + excinfo.value )