コード例 #1
0
class TestNegamaxAi(unittest.TestCase):
    def setUp(self):
        self.ai = NegamaxAi()

    def test_get_move_blocks_a_threat(self):
        board = Board(["X", "X", "3", "O", "5", "6", "7", "8", "9"])
        self.assertEqual(self.ai.get_move(board, self.ai.PLAYER_O), 3)

    def test_get_move_should_take_center(self):
        board = Board(["X", "2", "3", "4", "5", "6", "7", "8", "9"])
        self.assertEqual(self.ai.get_move(board, self.ai.PLAYER_O), 5)

    def test_get_move_takes_win(self):
        board = Board(["X", "O", "3", "4", "O", "X", "X", "8", "9"])
        self.assertEqual(self.ai.get_move(board, self.ai.PLAYER_O), 8)
コード例 #2
0
from src.game import Game
from src.console_io import ConsoleIo
from src.game_engine import GameEngine
from src.board_analyzer import BoardAnalyzer
from src.negamax_ai import NegamaxAi

io = ConsoleIo()
ai = NegamaxAi()
board_analyzer = BoardAnalyzer()
engine = GameEngine(io, ai, board_analyzer)
game = Game(io, engine)
game.begin()
コード例 #3
0
 def setUp(self):
     self.ai = NegamaxAi()