diff options
Diffstat (limited to 'src/testlib/doc')
-rw-r--r-- | src/testlib/doc/snippets/code/doc_src_qsignalspy.cpp | 48 | ||||
-rw-r--r-- | src/testlib/doc/src/qttestlib-manual.qdoc | 5 |
2 files changed, 53 insertions, 0 deletions
diff --git a/src/testlib/doc/snippets/code/doc_src_qsignalspy.cpp b/src/testlib/doc/snippets/code/doc_src_qsignalspy.cpp index a4513a55a9..37aba2715b 100644 --- a/src/testlib/doc/snippets/code/doc_src_qsignalspy.cpp +++ b/src/testlib/doc/snippets/code/doc_src_qsignalspy.cpp @@ -98,3 +98,51 @@ QVERIFY(spy.wait(1000)); QSignalSpy spy(myPushButton, &QPushButton::clicked); //! [6] +//! [7] +QObject object; +auto mo = object.metaObject(); +auto signalIndex = mo->indexOfSignal("objectNameChanged(QString)"); +auto signal = mo->method(signalIndex); + +QSignalSpy spy(&object, signal); +object.setObjectName("A new object name"); +QCOMPARE(spy.count(), 1); +//! [7] + +//! [8] +void tst_QWindow::writeMinMaxDimensionalProps_data() + QTest::addColumn<int>("propertyIndex"); + + // Collect all relevant properties + static const auto mo = QWindow::staticMetaObject; + for (int i = mo.propertyOffset(); i < mo.propertyCount(); ++i) { + auto property = mo.property(i); + + // ...that have type int + if (property.type() == QVariant::Int) { + static const QRegularExpression re("^minimum|maximum"); + const auto name = property.name(); + + // ...and start with "minimum" or "maximum" + if (re.match(name).hasMatch()) { + QTest::addRow("%s", name) << i; + } + } + } +} + +void tst_QWindow::writeMinMaxDimensionalProps() +{ + QFETCH(int, propertyIndex); + + auto property = QWindow::staticMetaObject.property(propertyIndex); + QVERIFY(property.isWritable()); + QVERIFY(property.hasNotifySignal()); + + QWindow window; + QSignalSpy spy(&window, property.notifySignal()); + + QVERIFY(property.write(&window, 42)); + QCOMPARE(spy.count(), 1); +} +//! [8] diff --git a/src/testlib/doc/src/qttestlib-manual.qdoc b/src/testlib/doc/src/qttestlib-manual.qdoc index a55671522b..19d871d404 100644 --- a/src/testlib/doc/src/qttestlib-manual.qdoc +++ b/src/testlib/doc/src/qttestlib-manual.qdoc @@ -123,6 +123,11 @@ Example: \snippet code/doc_src_qtestlib.cpp 0 + Finally, if the test class has a static public \c{void initMain()} method, + it is called by the QTEST_MAIN macros before the QApplication object + is instantiated. For example, this allows for setting application + attributes like Qt::AA_DisableHighDpiScaling. This was added in 5.14. + For more examples, refer to the \l{Qt Test Tutorial}. \if !defined(qtforpython) |