Skip to content

Commit 175887e

Browse files
janezdnikicc
authored andcommitted
DomainModel: Add tests for filtering
1 parent 11a64a6 commit 175887e

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

Orange/widgets/tests/test_itemmodels.py renamed to Orange/widgets/utils/tests/test_itemmodels.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
from AnyQt.QtCore import Qt
77

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

@@ -288,3 +288,25 @@ def test_subparts(self):
288288
sorted(attrs + metas, key=lambda x: x.name) +
289289
[sep] +
290290
sorted(classes, key=lambda x: x.name))
291+
292+
def test_filtering(self):
293+
cont = [ContinuousVariable(n) for n in "abc"]
294+
disc = [DiscreteVariable(n) for n in "def"]
295+
attrs = cont + disc
296+
297+
model = DomainModel(valid_types=(ContinuousVariable, ))
298+
model.set_domain(Domain(attrs))
299+
self.assertEqual(list(model), cont)
300+
301+
model = DomainModel(valid_types=(DiscreteVariable, ))
302+
model.set_domain(Domain(attrs))
303+
self.assertEqual(list(model), disc)
304+
305+
disc[0].attributes["hidden"] = True
306+
model.set_domain(Domain(attrs))
307+
self.assertEqual(list(model), disc[1:])
308+
309+
model = DomainModel(valid_types=(DiscreteVariable, ),
310+
skip_hidden_vars=False)
311+
model.set_domain(Domain(attrs))
312+
self.assertEqual(list(model), disc)

0 commit comments

Comments
 (0)