Tolerate malformed repository/description metadata instead of crashing

This commit is contained in:
J. Nick Koston
2026-08-23 21:59:22 -05:00
committed by J. Nick Koston
parent 1f5152892c
commit d80d2c7034
2 changed files with 20 additions and 3 deletions
+12
View File
@@ -374,6 +374,18 @@ def test_generate_idf_component_yml_basic(tmp_component):
assert result == "description: test\nrepository: http://aaa\n"
def test_generate_idf_component_yml_tolerates_malformed_metadata(tmp_component):
"""A string repository is the URL itself; junk shapes drop instead of
crashing on a third-party manifest."""
tmp_component.data = {"description": "test", "repository": "http://aaa"}
assert (
generate_idf_component_yml(tmp_component)
== "description: test\nrepository: http://aaa\n"
)
tmp_component.data = {"description": {"en": "x"}, "repository": 123}
assert generate_idf_component_yml(tmp_component) == "{}\n"
def test_generate_idf_component_yml_with_dependencies(tmp_component, tmp_path):
dep = IDFComponent("dep", "1.0", source=URLSource("http://dummy.com"))
dep.path = tmp_path / "dep"