The Great Renaming of locks and keys.
[naja.git] / naja / tests / test_player.py
index 9939f58b31c4118953f0c0b6e5f5b6cc07dd4b66..1d11637b3cf9df8638617b24c23fdf21791a028e 100644 (file)
@@ -54,35 +54,35 @@ class TestPlayerBits(TestCase):
         bits = PlayerBits(0x03)
         self.assertEqual(bits.check_bits([BITS.NORTH]), True)
         self.assertEqual(bits.check_bits([BITS.NORTH, BITS.SOUTH]), True)
-        self.assertEqual(bits.check_bits([BITS.CYAN]), False)
-        self.assertEqual(bits.check_bits([BITS.CYAN, BITS.MSB]), False)
+        self.assertEqual(bits.check_bits([BITS.BLUE]), False)
+        self.assertEqual(bits.check_bits([BITS.BLUE, BITS.MSB]), False)
         self.assertEqual(
-            bits.check_bits([BITS.NORTH, BITS.SOUTH, BITS.CYAN]), False)
+            bits.check_bits([BITS.NORTH, BITS.SOUTH, BITS.BLUE]), False)
 
     def test_set_bits(self):
         bits = PlayerBits(0x03)
         self.assertEqual(bits._bits, 0x03)
-        bits.set_bits([BITS.NORTH, BITS.CYAN])
+        bits.set_bits([BITS.NORTH, BITS.BLUE])
         self.assertEqual(bits._bits, 0x13)
-        bits.set_bits([BITS.NORTH, BITS.CYAN, BITS.MSB])
+        bits.set_bits([BITS.NORTH, BITS.BLUE, BITS.MSB])
         self.assertEqual(bits._bits, 0x93)
 
     def test_clear_bits(self):
         bits = PlayerBits(0x03)
         self.assertEqual(bits._bits, 0x03)
-        bits.clear_bits([BITS.NORTH, BITS.CYAN])
+        bits.clear_bits([BITS.NORTH, BITS.BLUE])
         self.assertEqual(bits._bits, 0x02)
-        bits.clear_bits([BITS.NORTH, BITS.CYAN, BITS.MSB])
+        bits.clear_bits([BITS.NORTH, BITS.BLUE, BITS.MSB])
         self.assertEqual(bits._bits, 0x02)
 
     def test_toggle_bits(self):
         bits = PlayerBits(0x03)
         self.assertEqual(bits._bits, 0x03)
-        bits.toggle_bits([BITS.NORTH, BITS.CYAN])
+        bits.toggle_bits([BITS.NORTH, BITS.BLUE])
         self.assertEqual(bits._bits, 0x12)
-        bits.toggle_bits([BITS.NORTH, BITS.CYAN])
+        bits.toggle_bits([BITS.NORTH, BITS.BLUE])
         self.assertEqual(bits._bits, 0x03)
-        bits.toggle_bits([BITS.NORTH, BITS.CYAN, BITS.MSB])
+        bits.toggle_bits([BITS.NORTH, BITS.BLUE, BITS.MSB])
         self.assertEqual(bits._bits, 0x92)
 
 
@@ -157,3 +157,13 @@ class TestPlayer(TestCase):
         player = Player(0x0f, (4, 2))
         self.assertEqual(player.move(BITS.EAST), False)
         self.assertEqual(player.position, (4, 2))
+
+    def test_legal_moves_all_available(self):
+        player = Player(0x0f, (2, 2))
+        self.assertEqual(
+            player.legal_moves(), [(2, 2), (2, 1), (2, 3), (3, 2), (1, 2)])
+
+    def test_legal_moves_some_unavailable(self):
+        player = Player(0x0f, (0, 2))
+        player.bits.clear_bit(BITS.NORTH)
+        self.assertEqual(player.legal_moves(), [(0, 2), (0, 3), (1, 2)])