diff --git a/src/spdx_tools/spdx/parser/jsonlikedict/license_expression_parser.py b/src/spdx_tools/spdx/parser/jsonlikedict/license_expression_parser.py index a7c242df2..40f0c0dde 100644 --- a/src/spdx_tools/spdx/parser/jsonlikedict/license_expression_parser.py +++ b/src/spdx_tools/spdx/parser/jsonlikedict/license_expression_parser.py @@ -20,6 +20,9 @@ def parse_license_expression(license_expression_str: str) -> Union[LicenseExpres try: license_expression = Licensing().parse(license_expression_str) except ExpressionError as err: - raise SPDXParsingError([f"Error parsing LicenseExpression: {err.args[0]}: {license_expression_str}"]) + err_msg = "Error parsing LicenseExpression: " + err_msg += err.args[0] if f"{err.args[0]}: " else "" + err_msg += f"\"{license_expression_str}\"" + raise SPDXParsingError([err_msg]) return license_expression diff --git a/tests/spdx/parser/jsonlikedict/test_license_expression_parser.py b/tests/spdx/parser/jsonlikedict/test_license_expression_parser.py index f2177692c..4dd9b7270 100644 --- a/tests/spdx/parser/jsonlikedict/test_license_expression_parser.py +++ b/tests/spdx/parser/jsonlikedict/test_license_expression_parser.py @@ -31,6 +31,7 @@ def test_parse_license_expression(license_expression_str, expected_license): "invalid_license_expression,expected_message", [ (56, ["Error parsing LicenseExpression: expression must be a string and not: : 56"]), + ("LGPL-2.1, GPL-2.0, GPL-3.0",["Error parsing LicenseExpression: \"LGPL-2.1, GPL-2.0, GPL-3.0\""]), ], ) def test_parse_invalid_license_expression(invalid_license_expression, expected_message):