Merge branch 'esp8266-native-build-infra' into esp8266-native-framework-installer

This commit is contained in:
J. Nick Koston
2026-08-21 15:19:10 -05:00
2 changed files with 16 additions and 0 deletions
+6
View File
@@ -109,6 +109,12 @@ def registry_download(package: str, version: str) -> tuple[str, str, int | None]
systems = ["*"]
elif isinstance(systems, str):
systems = [systems]
elif not isinstance(systems, list):
# An int would make ``in`` a TypeError and a dict a key test
raise EsphomeError(
f"Unexpected package registry response for {package}: "
f"{str(file)[:200]}"
)
if "*" in systems or systype in systems:
sha256 = (file.get("checksum") or {}).get("sha256")
if not sha256:
@@ -442,3 +442,13 @@ def test_registry_download_non_dict_payload_is_named() -> None:
pytest.raises(EsphomeError, match="Unexpected package registry response"),
):
registry.registry_download("pkg", "1.0.0")
def test_registry_download_non_list_system_is_named() -> None:
"""A system field that is neither missing, str, nor list is an
unexpected payload, not a TypeError from the ``in`` test."""
with (
_registry_response([{"system": 5, "checksum": {"sha256": "abc"}, "size": 1}]),
pytest.raises(EsphomeError, match="Unexpected package registry response"),
):
registry.registry_download("pkg", "1.0.0")