Address review: unknown platforms raise, the filter pin asserts equality

An unknown or misspelled platform name yielded an empty set - the file
would be filtered out of every build (link failure at the end of a long
compile) and the subset guard passed vacuously.
This commit is contained in:
J. Nick Koston
2026-08-09 16:03:25 -05:00
parent 2e6ad94bd1
commit 9330204908
2 changed files with 4 additions and 1 deletions
+3
View File
@@ -105,6 +105,9 @@ def frameworks_for_platforms(platforms: Collection[str]) -> set[PlatformFramewor
registry: deriving the framework set here means a platform added to the
registry cannot validate and then fail at link on a filtered-out file.
"""
known = {pf.value[0].value for pf in PlatformFramework}
if unknown := set(platforms) - known:
raise ValueError(f"unknown platform(s): {sorted(unknown)}")
return {pf for pf in PlatformFramework if pf.value[0].value in platforms}
@@ -189,7 +189,7 @@ def test_hub_source_filter_covers_every_hub_platform() -> None:
hub_frameworks = bluetooth_connection.SOURCE_FILE_FRAMEWORKS[
"bluetooth_connection_hub.cpp"
]
assert expected <= hub_frameworks
assert expected == hub_frameworks
def test_bluetooth_connection_auto_load_covers_its_includes() -> None: