diff options
Diffstat (limited to 'tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp')
-rw-r--r-- | tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp index ef0ce77bbb..8d331389f5 100644 --- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp +++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp @@ -1,7 +1,7 @@ /**************************************************************************** ** -** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). -** Contact: http://www.qt-project.org/legal +** Copyright (C) 2015 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ ** ** This file is part of the test suite of the Qt Toolkit. ** @@ -10,9 +10,9 @@ ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. For licensing terms and -** conditions see http://qt.digia.com/licensing. For further information -** use the contact form at http://qt.digia.com/contact-us. +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser @@ -23,8 +23,8 @@ ** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** -** In addition, as a special exception, Digia gives you certain additional -** rights. These rights are described in the Digia Qt LGPL Exception +** As a special exception, The Qt Company gives you certain additional +** rights. These rights are described in The Qt Company LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** $QT_END_LICENSE$ @@ -86,6 +86,7 @@ private slots: void deselectRemovedMiddleRange(); void rangeOperatorLessThan_data(); void rangeOperatorLessThan(); + void setModel(); void testDifferentModels(); @@ -107,8 +108,6 @@ typedef QList<int> IntList; typedef QPair<int, int> IntPair; typedef QList<IntPair> PairList; -Q_DECLARE_METATYPE(QItemSelection) - class QStreamHelper: public QAbstractItemModel { public: @@ -2561,6 +2560,21 @@ void tst_QItemSelectionModel::rangeOperatorLessThan() QVERIFY(r4 < r2); } +void tst_QItemSelectionModel::setModel() +{ + QItemSelectionModel sel; + QVERIFY(!sel.model()); + QSignalSpy modelChangedSpy(&sel, SIGNAL(modelChanged(QAbstractItemModel*))); + QStringListModel model(QStringList() << "Blah" << "Blah" << "Blah"); + sel.setModel(&model); + QCOMPARE(sel.model(), &model); + QCOMPARE(modelChangedSpy.count(), 1); + sel.select(model.index(0), QItemSelectionModel::Select); + QVERIFY(!sel.selection().isEmpty()); + sel.setModel(0); + QVERIFY(sel.selection().isEmpty()); +} + void tst_QItemSelectionModel::testDifferentModels() { QStandardItemModel model1; |