diff options
Diffstat (limited to 'tests/auto/gui')
-rw-r--r-- | tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp index f046ff9512..343150d25d 100644 --- a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp +++ b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp @@ -106,6 +106,7 @@ private slots: void sort(); void sortRole_data(); void sortRole(); + void sortRoleBindings(); void findItems(); void getSetHeaderItem(); void indexFromItem(); @@ -905,6 +906,22 @@ void tst_QStandardItemModel::sortRole() } } +void tst_QStandardItemModel::sortRoleBindings() +{ + QStandardItemModel model; + QCOMPARE(model.sortRole(), Qt::DisplayRole); + + QProperty<int> sortRole; + model.bindableSortRole().setBinding(Qt::makePropertyBinding(sortRole)); + sortRole = Qt::UserRole; + QCOMPARE(model.sortRole(), Qt::UserRole); + + QProperty<int> sortRoleObserver; + sortRoleObserver.setBinding([&] { return model.sortRole(); }); + model.setSortRole(Qt::EditRole); + QCOMPARE(sortRoleObserver, Qt::EditRole); +} + void tst_QStandardItemModel::findItems() { QStandardItemModel model; |