feat(sveta): Add tests verifying username remains clickable with decorative title badge on leaderboard
DevPlace CI / test (pull_request) Failing after 1h6m27s

This commit is contained in:
typosaurus
2026-08-04 20:24:15 +00:00
parent 5fc1aa9791
commit 768a128700
3 changed files with 94 additions and 1 deletions
+25 -1
View File
@@ -755,7 +755,28 @@ def test_leaderboard_entry_exposes_score_and_prestige(local_db):
farm = store.get_farm(user["uid"])
assert entry["prestige"] == 3
assert entry["score"] == economy.farm_score(farm)
assert {"rank", "username", "level", "xp", "coins", "total_harvests", "prestige", "score"} <= set(entry)
assert {"rank", "username", "level", "xp", "coins", "total_harvests", "prestige", "score", "title"} <= set(entry)
def test_leaderboard_entry_title_empty_when_no_title_equipped(local_db):
user = _reset("unit_lb_no_title")
_set(user, prestige=1)
entry = next(e for e in store.leaderboard(50) if e["username"] == "unit_lb_no_title")
assert "title" in entry
assert entry["title"] == ""
def test_leaderboard_entry_title_is_display_name_when_equipped(local_db):
user = _reset("unit_lb_title_user", coins=300_000)
_set(user, prestige=1)
from devplacepy.services.game.store.cosmetics import equip_title
store.buy_cosmetic(user, "title_refactorer")
equip_title(user, "title_refactorer")
_clear_game_caches()
entry = next(e for e in store.leaderboard(50) if e["username"] == "unit_lb_title_user")
assert entry["title"] == "Serial Refactorer"
assert entry["username"] == "unit_lb_title_user"
assert entry["title"] != entry["username"]
# --- market saturation ---------------------------------------------------------
@@ -1177,3 +1198,6 @@ def test_claim_grant_partial_treasury(local_db):
result = store.claim_grant(user)
assert result["amount"] == 300
assert store.treasury_balance() == 0