|
23 | 23 | from arraykit import first_true_1d |
24 | 24 | from arraykit import first_true_2d |
25 | 25 | from arraykit import slice_to_ascending_slice |
| 26 | +from arraykit import slice_to_unit |
26 | 27 | from arraykit import array_to_tuple_array |
27 | 28 | from arraykit import array_to_tuple_iter |
28 | 29 |
|
@@ -953,6 +954,24 @@ def test_slice_to_ascending_slice_i(self) -> None: |
953 | 954 | slice(1, 2, None) |
954 | 955 | ) |
955 | 956 |
|
| 957 | + def test_slice_to_unit_a(self) -> None: |
| 958 | + self.assertEqual(slice_to_unit(slice(3, 4)), 3) |
| 959 | + self.assertEqual(slice_to_unit(slice(0, 1)), 0) |
| 960 | + self.assertEqual(slice_to_unit(slice(None, 1)), 0) |
| 961 | + |
| 962 | + def test_slice_to_unit_b(self) -> None: |
| 963 | + self.assertEqual(slice_to_unit(slice(0, 2)), -1) |
| 964 | + self.assertEqual(slice_to_unit(slice(5, 5)), -1) |
| 965 | + self.assertEqual(slice_to_unit(slice(0, 1, 2)), -1) |
| 966 | + self.assertEqual(slice_to_unit(slice(0, 1, -1)), -1) |
| 967 | + self.assertEqual(slice_to_unit(slice(0, None)), -1) |
| 968 | + self.assertEqual(slice_to_unit(slice(None, 2)), -1) |
| 969 | + self.assertEqual(slice_to_unit(slice(-1, 0)), -1) |
| 970 | + |
| 971 | + def test_slice_to_unit_c(self) -> None: |
| 972 | + with self.assertRaises(TypeError): |
| 973 | + _ = slice_to_unit(3) |
| 974 | + |
956 | 975 |
|
957 | 976 | if __name__ == '__main__': |
958 | 977 | unittest.main() |
0 commit comments