Example #1
0
    def test_GetLatestPlacedStoneColorCode_GetColorForEmptyBoard_ReturnsColorCode(
            self):
        "Get color code of latest placed stone for empty board."

        board = Board()
        board.save()
        self.assertEqual(board.get_latest_placed_stone_color_code(), 1)
Example #2
0
File: models.py Project: somnam/xo
    def test_CreateBoard_CreatesDefinedSizeInstance(self):
        "Creating Board instance of defined size"

        board = Board(size="9x9")
        board.save()
        self.assertEqual(board.size, "9x9")
        self.assertEqual(board.rows, 9)
        self.assertEqual(board.columns, 9)
Example #3
0
    def test_CreateBoard_CreatesDefinedSizeInstance(self):
        "Creating Board instance of defined size"

        board = Board(size="9x9")
        board.save()
        self.assertEqual(board.size, "9x9")
        self.assertEqual(board.rows, 9)
        self.assertEqual(board.columns, 9)
Example #4
0
File: models.py Project: somnam/xo
    def test_CreateBoard_CreatesInstance(self):
        "Creating empty Board instance"

        board = Board()
        board.save()
        self.assertIsInstance(board, Board)
        self.assertEqual(board.size, "13x13")
        self.assertEqual(board.rows, 13)
        self.assertEqual(board.columns, 13)
Example #5
0
    def test_CreateBoard_CreatesInstance(self):
        "Creating empty Board instance"

        board = Board()
        board.save()
        self.assertIsInstance(board, Board)
        self.assertEqual(board.size, "13x13")
        self.assertEqual(board.rows, 13)
        self.assertEqual(board.columns, 13)
Example #6
0
File: models.py Project: somnam/xo
    def test_AppendBlackStonesToBoard_DoesNotAppend(self):
        "Appending black stones twice to board."

        # Create black stones twice for borad
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        board.add_stones(user, STONE_COLORS['black'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 41)
Example #7
0
    def test_AppendWhiteStonesToBoard_DoesNotAppend(self):
        "Appending white stones twice to board."

        # Add black and white stones to board
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        user2 = User.objects.get(id=2)
        board.add_stones(user2, STONE_COLORS['white'])

        # Add white stones for second time
        board.add_stones(user2, STONE_COLORS['white'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 81)
Example #8
0
File: utils.py Project: somnam/xo
    def test_GetBoardUpdateJson_EmptyBoard_ReturnsJson(self):
        "Serializing update data for empty board."

        # Create new board
        game = Game()
        game.save()
        board = Board(game_id=game.id)
        board.save()

        expect = simplejson.dumps({
            'placed_stones'         : [],
            'next_move_color'       : 'black',
            'latest_placed_stone'   : None,
        })

        result = go.utils.get_board_update_json(game.id)

        self.assertEqual(result, expect)
Example #9
0
File: models.py Project: somnam/xo
    def test_AssingBoardToGame_Assigns(self):
        "Creating Board instance and assing to a Game"

        # Create and assing
        game = Game.objects.get(id=1)
        board = Board(game_id=game.id)
        board.save()

        # Check instance
        self.assertIsInstance(board, Board)

        # Get Game by Board id
        self.assertIsInstance(board.game, Game)
        self.assertTrue(board.game.id, game.id)

        # Get Board by Game id
        self.assertIsInstance(game.board, Board)
        self.assertTrue(game.board.pk, board.pk)
Example #10
0
    def test_AssingBoardToGame_Assigns(self):
        "Creating Board instance and assing to a Game"

        # Create and assing
        game = Game.objects.get(id=1)
        board = Board(game_id=game.id)
        board.save()

        # Check instance
        self.assertIsInstance(board, Board)

        # Get Game by Board id
        self.assertIsInstance(board.game, Game)
        self.assertTrue(board.game.id, game.id)

        # Get Board by Game id
        self.assertIsInstance(game.board, Board)
        self.assertTrue(game.board.pk, board.pk)
Example #11
0
File: utils.py Project: somnam/xo
    def test_GetBoardUpdateJson_EmptyBoard_ReturnsJson(self):
        "Serializing update data for empty board."

        # Create new board
        game = Game()
        game.save()
        board = Board(game_id=game.id)
        board.save()

        expect = simplejson.dumps({
            'placed_stones': [],
            'next_move_color': 'black',
            'latest_placed_stone': None,
        })

        result = go.utils.get_board_update_json(game.id)

        self.assertEqual(result, expect)
Example #12
0
File: models.py Project: somnam/xo
    def test_AppendWhiteStonesToBoard_DoesNotAppend(self):
        "Appending white stones twice to board."

        # Add black and white stones to board
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        user2 = User.objects.get(id=2)
        board.add_stones(user2, STONE_COLORS['white'])

        # Add white stones for second time
        board.add_stones(user2, STONE_COLORS['white'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 81)
Example #13
0
File: models.py Project: somnam/xo
    def test_CreateBlackStonesForBoard_Creates(self):
        "Creating black stones for 9x9 borad."

        # Create black stones for borad
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 41)

        # Check stone properties
        stone = board.stone_set.get(id=1)
        self.assertIsInstance(stone, Stone)
        self.assertEqual(stone.board, board)
        self.assertEqual(stone.user, user)
        self.assertEqual(stone.row, -1)
        self.assertEqual(stone.col, -1)
        self.assertEqual(stone.color, 0)
Example #14
0
File: forms.py Project: somnam/xo
    def save(self):
        # Create a new Game instance for current user
        game = Game(name=self.cleaned_data['name'])
        game.save()
        # Add user to game
        game.users.add(self.user.id)
        game.save()

        # Create a new Board instance and assign it to created game
        board = Board(game_id=game.id, size=self.cleaned_data['size'])
        board.save()

        # Create black Stone instances for first player.
        # Second player will have white stones.
        board.add_stones(self.user, STONE_COLORS['black'])

        # Add chat to game
        chat = Chat(game_id=game.id)
        chat.save()

        # Add player join message
        chat.join(self.user)

        return game
Example #15
0
    def test_AppendBlackStonesToBoard_DoesNotAppend(self):
        "Appending black stones twice to board."

        # Create black stones twice for borad
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        board.add_stones(user, STONE_COLORS['black'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 41)
Example #16
0
    def test_AppendWhiteStonesToBoard_Appends(self):
        "Appending white stones to 9x9 board."

        # Add black and white stones to board
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        user2 = User.objects.get(id=2)
        board.add_stones(user2, STONE_COLORS['white'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 81)

        # Check stone properties
        stone = board.stone_set.get(id=42)
        self.assertIsInstance(stone, Stone)
        self.assertEqual(stone.board, board)
        self.assertEqual(stone.user, user2)
        self.assertEqual(stone.row, -1)
        self.assertEqual(stone.col, -1)
        self.assertEqual(stone.color, 1)
Example #17
0
File: models.py Project: somnam/xo
    def test_AppendWhiteStonesToBoard_Appends(self):
        "Appending white stones to 9x9 board."

        # Add black and white stones to board
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])
        user2 = User.objects.get(id=2)
        board.add_stones(user2, STONE_COLORS['white'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 81)

        # Check stone properties
        stone = board.stone_set.get(id=42)
        self.assertIsInstance(stone, Stone)
        self.assertEqual(stone.board, board)
        self.assertEqual(stone.user, user2)
        self.assertEqual(stone.row, -1)
        self.assertEqual(stone.col, -1)
        self.assertEqual(stone.color, 1)
Example #18
0
    def test_CreateBlackStonesForBoard_Creates(self):
        "Creating black stones for 9x9 borad."

        # Create black stones for borad
        board = Board(game_id=1, size="9x9")
        board.save()
        user = User.objects.get(id=1)
        board.add_stones(user, STONE_COLORS['black'])

        # Check stones count
        self.assertEqual(board.stone_set.count(), 41)

        # Check stone properties
        stone = board.stone_set.get(id=1)
        self.assertIsInstance(stone, Stone)
        self.assertEqual(stone.board, board)
        self.assertEqual(stone.user, user)
        self.assertEqual(stone.row, -1)
        self.assertEqual(stone.col, -1)
        self.assertEqual(stone.color, 0)
Example #19
0
File: forms.py Project: somnam/xo
    def save(self):
        # Create a new Game instance for current user
        game = Game(name=self.cleaned_data['name'])
        game.save()
        # Add user to game
        game.users.add(self.user.id)
        game.save()

        # Create a new Board instance and assign it to created game
        board = Board(game_id=game.id, size=self.cleaned_data['size'])
        board.save()

        # Create black Stone instances for first player.
        # Second player will have white stones.
        board.add_stones(self.user, STONE_COLORS['black'])

        # Add chat to game
        chat = Chat(game_id=game.id)
        chat.save()

        # Add player join message
        chat.join(self.user)

        return game
Example #20
0
    def test_GetLatestPlacedStoneColorCode_GetColor_ReturnsColorCode(self):
        "Get color code of latest placed stone."

        board = Board(game_id=1, size="9x9")
        self.assertEqual(board.get_latest_placed_stone_color_code(), 1)
Example #21
0
File: models.py Project: somnam/xo
    def test_GetLatestPlacedStoneColorCode_GetColor_ReturnsColorCode(self):
        "Get color code of latest placed stone."

        board = Board(game_id=1, size="9x9")
        self.assertEqual(board.get_latest_placed_stone_color_code(), 1)
Example #22
0
File: models.py Project: somnam/xo
    def test_GetLatestPlacedStoneColorCode_GetColorForEmptyBoard_ReturnsColorCode(self):
        "Get color code of latest placed stone for empty board."

        board = Board()
        board.save()
        self.assertEqual(board.get_latest_placed_stone_color_code(), 1)