45 lines
1.9 KiB
GDScript
45 lines
1.9 KiB
GDScript
extends SceneTree
|
|
## Headless smoke test for EconomyApiClient.
|
|
|
|
func _init() -> void:
|
|
print("[SMOKE] Starting EconomyApiClient smoke test...")
|
|
|
|
var api_script = load("res://scripts/api_client.gd")
|
|
if not api_script:
|
|
printerr("[FAIL] Could not load api_client.gd")
|
|
quit(1)
|
|
return
|
|
|
|
var api: Node = api_script.new()
|
|
root.add_child(api)
|
|
|
|
# Verify idempotency key generation
|
|
var key1: String = EconomyApiClient.generate_idempotency_key()
|
|
var key2: String = EconomyApiClient.generate_idempotency_key()
|
|
assert(key1 != "", "Key should not be empty")
|
|
assert(key1 != key2, "Keys should be unique")
|
|
print("[PASS] Idempotency key generation: ", key1)
|
|
|
|
# Verify method existence on EconomyApiClient
|
|
var client = EconomyApiClient.new()
|
|
assert(client.has_method("get_wallet"), "Missing get_wallet")
|
|
assert(client.has_method("get_wallet_transactions"), "Missing get_wallet_transactions")
|
|
assert(client.has_method("purchase_credits"), "Missing purchase_credits")
|
|
assert(client.has_method("get_catalog_items"), "Missing get_catalog_items")
|
|
assert(client.has_method("create_catalog_item"), "Missing create_catalog_item")
|
|
assert(client.has_method("create_listing"), "Missing create_listing")
|
|
assert(client.has_method("search_listings"), "Missing search_listings")
|
|
assert(client.has_method("get_listing"), "Missing get_listing")
|
|
assert(client.has_method("update_listing"), "Missing update_listing")
|
|
assert(client.has_method("delist_listing"), "Missing delist_listing")
|
|
assert(client.has_method("purchase_listing"), "Missing purchase_listing")
|
|
assert(client.has_method("get_purchases"), "Missing get_purchases")
|
|
assert(client.has_method("get_creator_balance"), "Missing get_creator_balance")
|
|
assert(client.has_method("request_payout"), "Missing request_payout")
|
|
assert(client.has_method("get_payouts"), "Missing get_payouts")
|
|
print("[PASS] All EconomyApiClient methods verified")
|
|
|
|
api.queue_free()
|
|
print("[SMOKE] EconomyApiClient smoke test PASSED")
|
|
quit(0)
|