diff options
Diffstat (limited to 'tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp')
-rw-r--r-- | tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp | 45 |
1 files changed, 27 insertions, 18 deletions
diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp index 3bea468e5b..73a81f56ab 100644 --- a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -1,12 +1,19 @@ // Copyright (C) 2021 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only #include <QTest> #include <QtTest/private/qpropertytesthelper_p.h> + +#ifndef QTEST_THROW_ON_FAIL +# error This test requires QTEST_THROW_ON_FAIL being active. +#endif + #include <qabstractproxymodel.h> #include <QItemSelection> #include <qstandarditemmodel.h> +#include <QtCore/qscopeguard.h> + class tst_QAbstractProxyModel : public QObject { Q_OBJECT @@ -225,7 +232,7 @@ void tst_QAbstractProxyModel::headerDataInBounds() QCOMPARE(proxy.rowCount(), 1); QCOMPARE(proxy.columnCount(), 5); - QCOMPARE(headerDataChangedSpy.size(), 1); + QTRY_COMPARE(headerDataChangedSpy.size(), 1); QCOMPARE(headerDataChangedSpy[0][0].value<Qt::Orientation>(), Qt::Horizontal); QCOMPARE(headerDataChangedSpy[0][1].value<int>(), 0); QCOMPARE(headerDataChangedSpy[0][2].value<int>(), 4); @@ -266,7 +273,7 @@ void tst_QAbstractProxyModel::headerDataInBounds() QCOMPARE(proxy.rowCount(), 0); QCOMPARE(proxy.columnCount(), 5); - QCOMPARE(headerDataChangedSpy.size(), 2); + QTRY_COMPARE(headerDataChangedSpy.size(), 2); QCOMPARE(headerDataChangedSpy[1][0].value<Qt::Orientation>(), Qt::Horizontal); QCOMPARE(headerDataChangedSpy[1][1].value<int>(), 0); QCOMPARE(headerDataChangedSpy[1][2].value<int>(), 4); @@ -610,28 +617,30 @@ void tst_QAbstractProxyModel::sourceModelBinding() SubQAbstractProxyModel proxy; QStandardItemModel model1; QStandardItemModel model2; - QTestPrivate::testReadWritePropertyBasics<QAbstractProxyModel, QAbstractItemModel *>( + const char *lhs; + const char *rhs; + + auto printOnFailure = qScopeGuard([&] { + qDebug("Failed %s - %s test", lhs, rhs); + }); + lhs = "model"; + rhs = "model"; + QTestPrivate::testReadWritePropertyBasics<SubQAbstractProxyModel, QAbstractItemModel *>( proxy, &model1, &model2, "sourceModel"); - if (QTest::currentTestFailed()) { - qDebug("Failed model - model test"); - return; - } proxy.setSourceModel(&model2); - QTestPrivate::testReadWritePropertyBasics<QAbstractProxyModel, QAbstractItemModel *>( + lhs = "model"; + rhs = "nullptr"; + QTestPrivate::testReadWritePropertyBasics<SubQAbstractProxyModel, QAbstractItemModel *>( proxy, &model1, nullptr, "sourceModel"); - if (QTest::currentTestFailed()) { - qDebug("Failed model - nullptr test"); - return; - } proxy.setSourceModel(&model1); - QTestPrivate::testReadWritePropertyBasics<QAbstractProxyModel, QAbstractItemModel *>( + lhs = "nullptr"; + rhs = "model"; + QTestPrivate::testReadWritePropertyBasics<SubQAbstractProxyModel, QAbstractItemModel *>( proxy, nullptr, &model2, "sourceModel"); - if (QTest::currentTestFailed()) { - qDebug("Failed nullptr - model test"); - return; - } + + printOnFailure.dismiss(); } QTEST_MAIN(tst_QAbstractProxyModel) |