|
10 | 10 | from saddle_points import saddle_points
|
11 | 11 |
|
12 | 12 |
|
| 13 | +# Tests adapted from `problem-specifications//canonical-data.json` @ v1.0.0 |
| 14 | + |
13 | 15 | class SaddlePointTest(unittest.TestCase):
|
14 | 16 | def test_one_saddle(self):
|
15 | 17 | inp = [[9, 8, 7], [5, 3, 2], [6, 6, 7]]
|
16 | 18 | self.assertEqual(saddle_points(inp), set([(1, 0)]))
|
17 | 19 |
|
| 20 | + def test_empty_matrix(self): |
| 21 | + self.assertEqual(saddle_points([]), set()) |
| 22 | + |
18 | 23 | def test_no_saddle(self):
|
19 |
| - self.assertEqual(saddle_points([[2, 1], [1, 2]]), set()) |
| 24 | + inp = [[1, 2, 3], [3, 1, 2], [2, 3, 1]] |
| 25 | + self.assertEqual(saddle_points(inp), set()) |
20 | 26 |
|
21 | 27 | def test_mult_saddle(self):
|
22 |
| - inp = [[5, 3, 5, 4], [6, 4, 7, 3], [5, 1, 5, 3]] |
23 |
| - ans = set([(0, 0), (0, 2), (2, 0), (2, 2)]) |
| 28 | + inp = [[4, 5, 4], [3, 5, 5], [1, 5, 4]] |
| 29 | + ans = set([(0, 1), (1, 1), (2, 1)]) |
24 | 30 | self.assertEqual(saddle_points(inp), ans)
|
25 | 31 |
|
26 |
| - def test_empty_matrix(self): |
27 |
| - self.assertEqual(saddle_points([]), set()) |
| 32 | + def test_indentify_saddle_bottom_right_corner(self): |
| 33 | + inp = [[8, 7, 9], [6, 7, 6], [3, 2, 5]] |
| 34 | + ans = set([(2, 2)]) |
| 35 | + self.assertEqual(saddle_points(inp), ans) |
| 36 | + |
| 37 | + # Additional tests for this track |
28 | 38 |
|
29 | 39 | def test_irregular_matrix(self):
|
30 | 40 | inp = [[3, 2, 1], [0, 1], [2, 1, 0]]
|
|
0 commit comments