Example #1
0
def test_queen_ranges(coords, queen):  # noqa: D103
    queen.position = Position(*coords)

    exp_ranges = chain(diagonal(queen), horizontal(queen), vertical(queen))

    assert sorted(queen.move_range) == sorted(queen.attack_range)
    assert sorted(exp_ranges) == sorted(queen.move_range)
Example #2
0
    def move_range(self):
        """Get a move range for king."""
        hor = horizontal(self, 2)
        ver = vertical(self, 2)
        diag = diagonal(self, 4)

        return list(hor) + list(ver) + list(diag)
Example #3
0
def test_king_ranges(coords, king):  # noqa: D103
    king.position = Position(*coords)

    exp_ranges = chain(diagonal(king, 4), horizontal(king, 2),
                       vertical(king, 2))

    assert sorted(king.move_range) == sorted(king.attack_range)
    assert sorted(exp_ranges) == sorted(king.move_range)
Example #4
0
 def move_range(self):
     """Get a move range for bishop."""
     return list(diagonal(self)) + super(Bishop, self).move_range
Example #5
0
def test_bishop_ranges(coords, bishop):  # noqa: D103
    bishop.position = Position(*coords)

    assert sorted(bishop.move_range) == sorted(bishop.attack_range)
    assert sorted(diagonal(bishop)) == sorted(bishop.move_range)