From b5fd516b73f0b8a5043dd35012d1e83e0b6683a8 Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Sat, 24 Oct 2026 09:25:00 +0800 Subject: [PATCH] =?UTF-8?q?test(=E8=BF=AD=E4=BB=A335=E8=A6=86=E7=9B=96?= =?UTF-8?q?=E6=89=B9):=20=E3=80=94v11=E3=80=95=E6=95=8C=E4=BE=A7=E8=A6=86?= =?UTF-8?q?=E7=9B=96=E5=88=A4=E6=8D=AE=E7=94=B1=E3=80=8C=E8=A1=8C=E9=9B=86?= =?UTF-8?q?=E9=9D=9E=E7=A9=BA=E3=80=8D=E6=94=B9=E4=B8=BA=E3=80=8C=E8=A7=A3?= =?UTF-8?q?=E6=9E=90=E8=90=BD=E5=B8=A6=20=E2=89=A5=20=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E6=B7=B1=E5=BA=A6=E3=80=8D=E2=80=94=E2=80=94=E9=9D=9E=E7=A9=BA?= =?UTF-8?q?=E4=B8=8D=E6=98=AF=E8=A6=86=E7=9B=96=E5=88=A4=E6=8D=AE=EF=BC=88?= =?UTF-8?q?=E8=B6=8A=E9=A1=B6=20resolver=20clamp=20=E7=85=A7=E6=A0=B7?= =?UTF-8?q?=E8=BF=94=E8=A1=8C=EF=BC=89=EF=BC=8Cband=5Fof=20=E9=9D=9E=20-1?= =?UTF-8?q?=20=E6=89=8D=E6=98=AF=E5=8D=A1=E2=91=A1=20V11=20=E7=9A=84?= =?UTF-8?q?=E5=8E=9F=E6=84=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game/tests/unit/core/level_shop_economy_test.gd | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/game/tests/unit/core/level_shop_economy_test.gd b/game/tests/unit/core/level_shop_economy_test.gd index 4eefdd2a..df6db8ed 100644 --- a/game/tests/unit/core/level_shop_economy_test.gd +++ b/game/tests/unit/core/level_shop_economy_test.gd @@ -70,7 +70,11 @@ func _smoke_generated_coverage() -> void: dmax = maxi(dmax, d) var kind := String(n["type"]) if kind == "battle" or kind == "boss": - if _db.resolve_enemy_rowset(L, d, "boss" if kind == "boss" else "battle").is_empty(): + var rk := "boss" if kind == "boss" else "battle" + var rs0: Array[Dictionary] = _db.resolve_enemy_rowset(L, d, rk) + # 判据=解析落带 ≥ 请求深度(等价 EnemyTable.band_of 非 -1)——行集非空不是覆盖判据, + # 越顶时 resolver 会 clamp 到顶带照样返回非空行(顶 clamp 消解正是设计禁的) + if rs0.is_empty() or int(rs0[0].get("depth_band", -1)) < d: enemy_ok = false var board: Dictionary = _db.resolve_board_gen(L, d) if board.is_empty() or int(board.get("node_depth", -1)) != d: @@ -86,7 +90,7 @@ func _smoke_generated_coverage() -> void: boss_band_ok = false readings.append("L%d 深度域 %d–%d" % [L, dmin, dmax]) print("[v11] 生成图覆盖量程读数:" + "; ".join(readings)) - Kit.check("生成图每个 battle/boss 节点深度在敌表解析到非空行集(顶 clamp 消解禁)〔v11〕", enemy_ok) + Kit.check("生成图每个 battle/boss 节点深度的敌侧解析落带 ≥ 请求深度(band_of 非 -1·顶 clamp 消解禁)〔v11〕", enemy_ok) Kit.check("生成图每个节点深度在 board_gen 精确命中(非空且 node_depth 等值)〔v11〕", board_ok) Kit.check("多终点 Boss 各终点解析带键两两互异(L2/L3×20 种子)〔v11〕", boss_band_ok)