-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathtests_rook.py
35 lines (27 loc) · 1.16 KB
/
tests_rook.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import unittest
from chess import *
class TestChessMethods(unittest.TestCase):
def test_rook(self):
self.assertTrue(r_allowed((3,3), (4,3)))
self.assertTrue(r_allowed((3,3), (5,3)))
self.assertTrue(r_allowed((3,3), (1,3)))
self.assertTrue(r_allowed((3,3), (3,1)))
self.assertTrue(r_allowed((3,3), (3,2)))
self.assertTrue(r_allowed((3,3), (3,4)))
self.assertTrue(r_allowed((3,3), (3,5)))
self.assertTrue(r_allowed((3,3), (3,8)))
self.assertFalse(r_allowed((3,3), (3,3)))
self.assertFalse(r_allowed((3,3), (4,4)))
self.assertFalse(r_allowed((3,3), (5,5)))
self.assertFalse(r_allowed((3,3), (1,1)))
def test_rook_additional(self):
self.assertTrue(r_allowed((1, 3), (3, 3)))
def test_out_of_bounds(self):
self.assertFalse(r_allowed((1, 1), (1, 0)))
self.assertFalse(r_allowed((4, 1), (4, 0)))
self.assertFalse(r_allowed((8, 9), (9, 9)))
self.assertFalse(r_allowed((1, 1), (0, 1)))
self.assertFalse(r_allowed((1, 2), (1, 0)))
self.assertFalse(r_allowed((9, 1), (8, 1)))
if __name__ == '__main__':
unittest.main()