Skip to content

Commit 0ca03bd

Browse files
committed
TST: itemmodels.AbstractSortTableModel: add test case, test sorting
1 parent ce3432d commit 0ca03bd

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

Orange/widgets/tests/test_itemmodels.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
from Orange.data import Domain, ContinuousVariable
99
from Orange.widgets.utils.itemmodels import \
10-
PyTableModel, PyListModel, DomainModel, _argsort
10+
AbstractSortTableModel, PyTableModel, PyListModel, DomainModel, _argsort
1111

1212

1313
class TestArgsort(TestCase):
@@ -120,6 +120,20 @@ def test_other_roles(self):
120120
Qt.TextAlignmentRole))
121121

122122

123+
class TestAbstractSortTableModel(TestCase):
124+
def setUp(self):
125+
assert issubclass(PyTableModel, AbstractSortTableModel)
126+
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])
135+
136+
123137
class TestPyListModel(TestCase):
124138
@classmethod
125139
def setUpClass(cls):

0 commit comments

Comments
 (0)