|
3 | 3 |
|
4 | 4 | from unittest import TestCase |
5 | 5 |
|
| 6 | +import numpy as np |
| 7 | + |
6 | 8 | from AnyQt.QtCore import Qt |
7 | 9 |
|
8 | 10 | from Orange.data import Domain, ContinuousVariable, DiscreteVariable |
@@ -124,14 +126,28 @@ class TestAbstractSortTableModel(TestCase): |
124 | 126 | def setUp(self): |
125 | 127 | assert issubclass(PyTableModel, AbstractSortTableModel) |
126 | 128 | self.model = PyTableModel([[1, 4], |
127 | | - [2, 3]]) |
128 | | - |
129 | | - def test_sorting(self): |
130 | | - self.model.sort(1, Qt.AscendingOrder) |
131 | | - self.assertSequenceEqual(self.model.mapToSourceRows(...).tolist(), [1, 0]) |
132 | | - |
133 | | - self.model.sort(1, Qt.DescendingOrder) |
134 | | - self.assertSequenceEqual(self.model.mapToSourceRows(...).tolist(), [0, 1]) |
| 129 | + [2, 2], |
| 130 | + [3, 3]]) |
| 131 | + |
| 132 | + def test_mapToSourceRows(self): |
| 133 | + model = self.model |
| 134 | + model.sort(1, Qt.AscendingOrder) |
| 135 | + self.assertSequenceEqual(model.mapToSourceRows(...).tolist(), [1, 2, 0]) |
| 136 | + self.assertSequenceEqual(model.mapToSourceRows([1, 2]).tolist(), [2, 0]) |
| 137 | + self.assertSequenceEqual(model.mapToSourceRows([]), []) |
| 138 | + self.assertSequenceEqual(model.mapToSourceRows(np.array([], dtype=int)), []) |
| 139 | + self.assertEqual(model.mapToSourceRows(1), 2) |
| 140 | + self.assertRaises(IndexError, model.mapToSourceRows, np.r_[0.]) |
| 141 | + |
| 142 | + def test_mapFromSourceRows(self): |
| 143 | + model = self.model |
| 144 | + model.sort(1, Qt.AscendingOrder) |
| 145 | + self.assertSequenceEqual(model.mapFromSourceRows(...).tolist(), [2, 0, 1]) |
| 146 | + self.assertSequenceEqual(model.mapFromSourceRows([1, 2]).tolist(), [0, 1]) |
| 147 | + self.assertSequenceEqual(model.mapFromSourceRows([]), []) |
| 148 | + self.assertSequenceEqual(model.mapFromSourceRows(np.array([], dtype=int)), []) |
| 149 | + self.assertEqual(model.mapFromSourceRows(1), 0) |
| 150 | + self.assertRaises(IndexError, model.mapFromSourceRows, np.r_[0.]) |
135 | 151 |
|
136 | 152 |
|
137 | 153 | class TestPyListModel(TestCase): |
|
0 commit comments