diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-11-16 08:43:08 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-12-04 07:38:56 +0100 |
commit | d9c71b834ccd815b85e9589f21eba1f51c48614a (patch) | |
tree | 7e7ea7bfb741f57782c35796c107bb62219ebae5 /examples/widgets/itemviews/simpletreemodel | |
parent | 9590ed6ba6dfc565832acddb69c69a3c8bf5e2e6 (diff) |
SimpleTreeModel: Add a test
Add a test running QAbstractItemModelTester on the model.
Pick-to: 6.6
Change-Id: I6ea5d34308357409b9a13eb0271392c8d171addd
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Diffstat (limited to 'examples/widgets/itemviews/simpletreemodel')
-rw-r--r-- | examples/widgets/itemviews/simpletreemodel/CMakeLists.txt | 28 | ||||
-rw-r--r-- | examples/widgets/itemviews/simpletreemodel/test.cpp | 35 |
2 files changed, 62 insertions, 1 deletions
diff --git a/examples/widgets/itemviews/simpletreemodel/CMakeLists.txt b/examples/widgets/itemviews/simpletreemodel/CMakeLists.txt index 519810f70f..73a50dbbf1 100644 --- a/examples/widgets/itemviews/simpletreemodel/CMakeLists.txt +++ b/examples/widgets/itemviews/simpletreemodel/CMakeLists.txt @@ -10,7 +10,7 @@ endif() set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/widgets/itemviews/simpletreemodel") -find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets) +find_package(Qt6 REQUIRED COMPONENTS Core Gui Test Widgets) qt_standard_project_setup() @@ -48,3 +48,29 @@ install(TARGETS simpletreemodel BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" ) + +#! [1] +# Unit Test + +include(CTest) + +qt_add_executable(simpletreemodel_tester + test.cpp + treeitem.cpp treeitem.h + treemodel.cpp treemodel.h) + +target_link_libraries(simpletreemodel_tester PRIVATE + Qt6::Core + Qt6::Test +) + +qt_add_resources(simpletreemodel_tester "simpletreemodel" + PREFIX + "/" + FILES + ${simpletreemodel_resource_files} +) + +add_test(NAME simpletreemodel_tester + COMMAND simpletreemodel_tester) +#! [1] diff --git a/examples/widgets/itemviews/simpletreemodel/test.cpp b/examples/widgets/itemviews/simpletreemodel/test.cpp new file mode 100644 index 0000000000..7e9479a396 --- /dev/null +++ b/examples/widgets/itemviews/simpletreemodel/test.cpp @@ -0,0 +1,35 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#include "treemodel.h" + +#include <QObject> +#include <QAbstractItemModelTester> +#include <QTest> + +using namespace Qt::StringLiterals; + +//! [1] +class TestSimpleTreeModel : public QObject +{ + Q_OBJECT + +private slots: + void testTreeModel(); +}; + +void TestSimpleTreeModel::testTreeModel() +{ + constexpr auto fileName = ":/default.txt"_L1; + QFile file(fileName); + QVERIFY2(file.open(QIODevice::ReadOnly | QIODevice::Text), + qPrintable(fileName + " cannot be opened: "_L1 + file.errorString())); + TreeModel model(QString::fromUtf8(file.readAll())); + + QAbstractItemModelTester tester(&model); +} + +QTEST_APPLESS_MAIN(TestSimpleTreeModel) + +#include "test.moc" +//! [1] |