Пример #1
0
    def test_bb_to_from_ch_state(self):
        # corner case: empty board.
        ch_state = ' ' * 64
        psns = bb.bboards_from_char_state(ch_state)
        self.assertEquals(psns, dict((ch, 0) for ch in 'wbemhdcr'))
        self.assertEquals(ch_state, bb.char_state_from_bboards(psns))

        # test all piece types.
        ch_state = [' '] * 64
        pieces = 'rcdhmeRCDHME'
        for idx, p in enumerate(pieces, 10):
            ch_state[idx] = p
        psns = bb.bboards_from_char_state(ch_state)
        self.assertEquals(''.join(ch_state), bb.char_state_from_bboards(psns))
def test_games_from_compressed():

    for game in games_from_compressed(ALLGAMESFILE):
        board = _test_game_setup(game)
        header = "#" + "-" * 79
        print header
        print "Game ID:", game["id"]
        print pprint_from_board_str(board)
        allmoves = game["movelist"]
        end_bb = play_archive_game(allmoves)
        board = char_state_from_bboards(end_bb)
        print
        print pprint_from_board_str(board)

        print "TERMINATION: {}".format(game["termination"])

        if game["termination"].lower() == "g":
            tg = is_goal(end_bb)
            assert tg == game["result"]
            print "GOAL: {}".format(game["result"])

        print header