fix: resolve pass keyword conflict in move_generator and game_controller
This commit is contained in:
4
tests/hello.gd
Normal file
4
tests/hello.gd
Normal file
@@ -0,0 +1,4 @@
|
||||
extends Node
|
||||
func _ready():
|
||||
print("hello")
|
||||
get_tree().quit(0)
|
||||
47
tests/quick_test.gd
Normal file
47
tests/quick_test.gd
Normal file
@@ -0,0 +1,47 @@
|
||||
extends Node
|
||||
|
||||
func _ready():
|
||||
print("=== Guandan Card Game - Core Logic Test ===\n")
|
||||
|
||||
var config := RuleConfig.standard()
|
||||
var deck := Deck.create(42)
|
||||
print("Deck: %d cards" % deck.remaining())
|
||||
assert(deck.remaining() == 108, "deck size")
|
||||
|
||||
deck = Deck.create(42)
|
||||
deck.deal(108)
|
||||
assert(deck.remaining() == 0, "deal all")
|
||||
|
||||
var d1 := Deck.create(42)
|
||||
var d2 := Deck.create(42)
|
||||
var h1 := d1.deal(27)
|
||||
var h2 := d2.deal(27)
|
||||
var deterministic := true
|
||||
for i in range(27):
|
||||
if h1[i].card_id != h2[i].card_id: deterministic = false
|
||||
assert(deterministic, "shuffle deterministic")
|
||||
|
||||
var gs := GameState.create(config, 42)
|
||||
assert(gs.current_rank == 2, "start level 2")
|
||||
|
||||
var t := Actions.Team.create_team(0, 0, 2)
|
||||
assert(t.teammate_of(0) == 2, "teammate")
|
||||
|
||||
var l1 := L1BasicAI.new()
|
||||
var hand: Array = [h1[0]]
|
||||
var decision := l1.decide(hand, [], 5, config)
|
||||
assert(decision.type != -2, "L1 AI returns valid result")
|
||||
|
||||
var l2 := L2RuleAI.new()
|
||||
var decision2 := l2.decide(hand, [], 5, config)
|
||||
assert(decision2.type != -2, "L2 AI returns valid result")
|
||||
|
||||
print("\n=== ALL TESTS PASSED ===")
|
||||
get_tree().quit(0)
|
||||
|
||||
func assert(condition: bool, name: String):
|
||||
if condition:
|
||||
print(" PASS: %s" % name)
|
||||
else:
|
||||
printerr(" FAIL: %s" % name)
|
||||
get_tree().quit(1)
|
||||
Reference in New Issue
Block a user