from tower_game.assets import AssetCatalog, build_manifest def test_asset_coverage_and_unique_hashes(): manifest = build_manifest() entries = manifest["assets"] categories = {} for entry in entries: categories[entry["category"]] = categories.get(entry["category"], 0) + 1 assert categories["player"] == 8 assert categories["grunt"] == 15 assert categories["boss"] == 6 assert categories["background"] == 2 assert len({entry["sha256"] for entry in entries}) == len(entries) def test_lightning_wraith_manifest_alias(): catalog = AssetCatalog.load() assert "grunt_lightning_wraith" in catalog.entries