Ejemplo n.º 1
0
    def TestAssert(board, expected, verbose):
        newBoard = FlipBoard(board)
        passed = EqualBoards(newBoard, expected)
        if verbose or not passed:
            print()
            print('TestRotateBoard')
            print(StringFromBoard(board))
            print('  result was \n{}, \nexpected \n{}'.format(
                StringFromBoard(newBoard), StringFromBoard(expected)))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 2
0
    def TestAssert(board, verbose):
        index = IndexBoard(board)
        newBoard = BoardFromIndex(index)
        passed = EqualBoards(board, newBoard)
        if verbose or not passed:
            print()
            print('TestBoardFromIndex')
            print(StringFromBoard(board))
            print('  result was \n{}\n'.format(StringFromBoard(newBoard)) +
                  '  expected \n{}\n'.format(StringFromBoard(board)))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 3
0
    def TestAssert(board, team, move, expected, verbose):
        newBoard = deepcopy(board)
        Move(newBoard, team, move)
        result = (newBoard == expected)
        if verbose or not result:
            print()
            print('TestMove')
            print(StringFromBoard(board))
            print('  testing with {} in {}'.format(team, move))
            print('  result was \n{}, \nexpected \n{}'.format(
                StringFromBoard(board), StringFromBoard(expected)))

        if not result:
            print('FAILED')
            return False
        else:
            return True
        return False
Ejemplo n.º 4
0
    def TestAssert(board, expected, verbose):
        newBoard, index, rotations, flips = CanonicalizeBoard(board)
        passed = EqualBoards(newBoard, expected[0])
        passed = passed and index == expected[1] and rotations == expected[
            2] and flips == expected[3]
        if verbose or not passed:
            print()
            print('TestCanonicalizeBoard')
            print(StringFromBoard(board))
            print('  result was \n{}, \nIndex: {}, Rotations: {}, Flips: {}\n'.
                  format(StringFromBoard(newBoard), index, rotations, flips) +
                  '  expected \n{}\nIndex: {}, Rotations: {}, Flips: {}'.
                  format(StringFromBoard(expected[0]), expected[1],
                         expected[2], expected[3]))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 5
0
    def TestAssert(board, team, expected, verbose):
        result = IsWinner(board, team)
        if verbose or result != expected:
            print()
            print('TestIsWinner')
            print(StringFromBoard(board))
            print('  testing with {}'.format(team))
            print('  result was {}'.format(result))

        if result != expected:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 6
0
    def TestAssert(board, expected, verbose):
        score = IndexBoard(board)
        passed = (score == expected)
        if verbose or not passed:
            print()
            print('TestIsCatsGame')
            print(StringFromBoard(board))
            print('  result was {}, expected {}'.format(score, expected))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
        return False
Ejemplo n.º 7
0
    def TestAssert(board, expected, verbose):
        catsGame = IsCatsGame(board)
        passed = (catsGame == expected)
        if verbose or not passed:
            print()
            print('TestIsCatsGame')
            print(StringFromBoard(board))
            print('  result was \n{}, \nexpected \n{}'.format(
                catsGame, expected))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 8
0
    def TestAssert(board, team, move, expected, verbose):
        result = ValidateMove(board, team, move)
        if verbose or result != expected:
            print()
            print('TestValidateMove')
            print(StringFromBoard(board))
            print('  testing with {} in {}'.format(team, move))
            print('  result was {}, expected {}'.format(result, expected))

        if result != expected:
            print('FAILED')
            return False
        else:
            return True
        return False
Ejemplo n.º 9
0
    def TestAssert(board, expected, verbose):
        index = IndexBoard(board)
        matchbox = DefaultMatchbox(index)
        passed = matchbox == expected
        if verbose or not passed:
            print()
            print('TestDefaultMatchbox')
            print(StringFromBoard(board))
            print('  result was \n{}\n'.format((matchbox)) +
                  '  expected \n{}\n'.format((expected)))

        if not passed:
            print('FAILED')
            return False
        else:
            return True
Ejemplo n.º 10
0
    def TestAssert(board, index, mover, repetitions, verbose):
        passedAll = True
        for _ in range(repetitions):
            square = GetComputerMove(board, index, mover)
            matchbox = GetMatchboxes()[index]
            row = square // 3
            col = square % 3
            passed = board[row][col] == ' ' and matchbox[square] >= 5
            if verbose or not passed:
                print()
                print(StringFromBoard(board))
                print('Row: {}, Col {}, Actual: |{}|, Probability: {}'.format(
                    row, col, board[row][col], matchbox[square]))
                matchbox[square] += 1
                GetMatchboxes()[index] = matchbox
                print(StringFromMatchbox(index))
            passedAll = passedAll and passed

        if not passedAll:
            print('FAILED')
            return False
        else:
            return True