class APieceOf5x5Blocks(unittest.TestCase):
    def setUp(self):
        self.piece_repr = "..XXX\n" + \
                          "..XX.\n" + \
                          "..X..\n" + \
                          ".....\n" + \
                          ".....\n"
        self.piece = Piece(self.piece_repr)

    def test_consists_of_many_blocks(self):
        self.assertEqual(self.piece_repr, str(self.piece))

    def test_can_be_rotated_right(self):
        piece = self.piece.rotate_right()
        expected_piece = ".....\n" + \
                         ".....\n" + \
                         "..XXX\n" + \
                         "...XX\n" + \
                         "....X\n"
        self.assertEqual(expected_piece, str(piece))

    def test_can_be_rotated_left(self):
        piece = self.piece.rotate_left()
        expected_piece = "X....\n" + \
                         "XX...\n" + \
                         "XXX..\n" + \
                         ".....\n" + \
                         ".....\n"
        self.assertEqual(expected_piece, str(piece))
class APieceOf5x5Blocks(unittest.TestCase):
    def setUp(self):
        self.piece_repr = "..XXX\n" + \
                          "..XX.\n" + \
                          "..X..\n" + \
                          ".....\n" + \
                          ".....\n"
        self.piece = Piece(self.piece_repr)

    def test_consists_of_many_blocks(self):
        self.assertEqual(self.piece_repr, str(self.piece))

    def test_can_be_rotated_right(self):
        piece = self.piece.rotate_right()
        expected_piece = ".....\n" + \
                         ".....\n" + \
                         "..XXX\n" + \
                         "...XX\n" + \
                         "....X\n"
        self.assertEqual(expected_piece, str(piece))

    def test_can_be_rotated_left(self):
        piece = self.piece.rotate_left()
        expected_piece = "X....\n" + \
                         "XX...\n" + \
                         "XXX..\n" + \
                         ".....\n" + \
                         ".....\n"
        self.assertEqual(expected_piece, str(piece))