netfishing/tests/exported_decal_hotfix_validation.gd

47 lines
1.2 KiB
GDScript

extends SceneTree
func _initialize() -> void:
call_deferred("_run")
func _run() -> void:
assert(
CharacterCustomizationCatalog._canonical_feature_filename(
"eyes_alligator_eyes.png"
) == "eyes_alligator_eyes.png"
)
assert(
CharacterCustomizationCatalog._canonical_feature_filename(
"eyes_alligator_eyes.png.import"
) == "eyes_alligator_eyes.png"
)
assert(
CharacterCustomizationCatalog._canonical_feature_filename(
"eyes_alligator_eyes.png.remap"
) == "eyes_alligator_eyes.png"
)
assert(
CharacterCustomizationCatalog._canonical_feature_filename(
"eyes_alligator_eyes.jpg"
).is_empty()
)
var expected_counts := {"eyes": 22, "mouth": 17, "nose": 17}
for category_id: String in expected_counts:
var options := CharacterCustomizationCatalog.options_for(category_id)
assert(options.size() == int(expected_counts[category_id]) + 1)
var seen_ids: Dictionary = {}
for option: Dictionary in options:
var option_id := str(option.get("id", ""))
assert(not seen_ids.has(option_id))
seen_ids[option_id] = true
if option_id != "none":
assert(
CharacterCustomizationCatalog.texture_for(
category_id, option_id
) != null
)
print("Exported decal hotfix validation: PASS")
quit()