From f19b818b581969d2f16e301cf138b759139ebfc4 Mon Sep 17 00:00:00 2001 From: Ryan Roden-Corrent Date: Fri, 29 Jul 2016 07:32:43 -0400 Subject: [PATCH] Test CompletionFilterModel.set_source_model --- tests/unit/completion/test_sortfilter.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/unit/completion/test_sortfilter.py b/tests/unit/completion/test_sortfilter.py index cdc05cb6c..0d00fcf64 100644 --- a/tests/unit/completion/test_sortfilter.py +++ b/tests/unit/completion/test_sortfilter.py @@ -77,3 +77,19 @@ def test_first_last_item(tree, first, last): filter_model = sortfilter.CompletionFilterModel(model) assert filter_model.data(filter_model.first_item()) == first assert filter_model.data(filter_model.last_item()) == last + + +def test_set_source_model(): + """Ensure setSourceModel sets source_model and clears the pattern.""" + model1 = base.BaseCompletionModel() + model2 = base.BaseCompletionModel() + filter_model = sortfilter.CompletionFilterModel(model1) + filter_model.set_pattern('foo') + # sourceModel() is cached as srcmodel, so make sure both match + assert filter_model.srcmodel is model1 + assert filter_model.sourceModel() is model1 + assert filter_model.pattern == 'foo' + filter_model.setSourceModel(model2) + assert filter_model.srcmodel is model2 + assert filter_model.sourceModel() is model2 + assert not filter_model.pattern