+ board.rotate_locations('ANTICLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (1, 1): '21', (2, 1): '31', (3, 1): '32',
+ (1, 2): '11', (3, 2): '33',
+ (1, 3): '12', (2, 3): '13', (3, 3): '23',
+ }))
+
+ def test_rotate_locations_anticlockwise_top(self):
+ board = GameBoard.new_game(self.make_deck(), initial_pos=(2, 0))
+ board.board_locations = self.generate_locations()
+ board.rotate_locations('ANTICLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (1, 0): '30', (3, 0): '31',
+ (1, 1): '10', (2, 1): '11', (3, 1): '21',
+ }))
+
+ def test_rotate_locations_anticlockwise_right(self):
+ board = GameBoard.new_game(self.make_deck(), initial_pos=(0, 2))
+ board.board_locations = self.generate_locations()
+ board.rotate_locations('ANTICLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (0, 1): '11', (1, 1): '12',
+ (1, 2): '13',
+ (0, 3): '01', (1, 3): '03',
+ }))
+
+ def test_rotate_locations_anticlockwise_corner(self):
+ board = GameBoard.new_game(self.make_deck(), initial_pos=(0, 4))
+ board.board_locations = self.generate_locations()
+ board.rotate_locations('ANTICLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (0, 3): '13', (1, 3): '14',
+ (1, 4): '03',
+ }))
+
+ def test_rotate_locations_clockwise(self):
+ board = GameBoard.new_game(self.make_deck())
+ board.board_locations = self.generate_locations()
+ board.rotate_locations('CLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (1, 1): '12', (2, 1): '11', (3, 1): '21',
+ (1, 2): '13', (3, 2): '31',
+ (1, 3): '23', (2, 3): '33', (3, 3): '32',
+ }))
+
+ def test_rotate_locations_clockwise_1_3(self):
+ board = GameBoard.new_game(self.make_deck(), initial_pos=(1, 3))
+ board.board_locations = self.generate_locations()
+ board.rotate_locations('CLOCKWISE')
+ self.assertEqual(board.board_locations, self.generate_locations({
+ (0, 2): '03', (1, 2): '02', (2, 2): '12',
+ (0, 3): '04', (2, 3): '22',
+ (0, 4): '14', (1, 4): '24', (2, 4): '23',
+ }))
+
+ def test_allow_chess_move_knight(self):
+ board = GameBoard.new_game(self.make_deck())