package selfplay_test import ( "testing" "github.com/iliadenisov/alphabet" "scrabble-solver/internal/dictdawg" "scrabble-solver/internal/wordlist" "scrabble-solver/rules" "scrabble-solver/scrabble" "scrabble-solver/selfplay" ) func TestPlayGameSmoke(t *testing.T) { rs := rules.English() words := wordlist.Encode([]string{ "cat", "cats", "car", "care", "cares", "cot", "cap", "cab", "at", "as", "tea", "eat", "ear", "era", "are", "oat", "oats", "sat", "set", "sea", "tar", "tars", "star", "arts", "rat", "rats", "ace", "aces", "scar", "scare", }, alphabet.Latin(), 2, 15) f, err := dictdawg.Build(alphabet.Latin(), words) if err != nil { t.Fatal(err) } gen := scrabble.NewDAWGGenerator(rs, f) res := selfplay.PlayGame(rs, gen, scrabble.Both, 1, nil) if res.Turns == 0 || res.Plays == 0 { t.Errorf("degenerate game: %+v", res) } t.Logf("smoke game: turns=%d plays=%d scores=%v", res.Turns, res.Plays, res.Scores) }