diff options
-rw-r--r-- | src/testlib/qsignaldumper.cpp | 10 | ||||
-rw-r--r-- | src/testlib/qsignaldumper_p.h | 3 | ||||
-rw-r--r-- | src/testlib/qtestcase.cpp | 8 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.junitxml | 12 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.lightxml | 6 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.tap | 2 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.teamcity | 1 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.txt | 2 | ||||
-rw-r--r-- | tests/auto/testlib/selftests/expected_signaldumper.xml | 6 |
9 files changed, 21 insertions, 29 deletions
diff --git a/src/testlib/qsignaldumper.cpp b/src/testlib/qsignaldumper.cpp index 8510b3ed6f..f43b3a8d92 100644 --- a/src/testlib/qsignaldumper.cpp +++ b/src/testlib/qsignaldumper.cpp @@ -170,8 +170,16 @@ static void qSignalDumperCallbackEndSignal(QObject *caller, int /*signal_index*/ } +void QSignalDumper::setEnabled(bool enabled) +{ + s_isEnabled = enabled; +} + void QSignalDumper::startDump() { + if (!s_isEnabled) + return; + static QSignalSpyCallbackSet set = { QTest::qSignalDumperCallback, QTest::qSignalDumperCallbackSlot, QTest::qSignalDumperCallbackEndSignal, nullptr }; qt_register_signal_spy_callbacks(&set); @@ -194,4 +202,6 @@ void QSignalDumper::clearIgnoredClasses() QTest::ignoreClasses()->clear(); } +bool QSignalDumper::s_isEnabled = false; + QT_END_NAMESPACE diff --git a/src/testlib/qsignaldumper_p.h b/src/testlib/qsignaldumper_p.h index 0f443fd612..e211f5c059 100644 --- a/src/testlib/qsignaldumper_p.h +++ b/src/testlib/qsignaldumper_p.h @@ -60,11 +60,14 @@ class QByteArray; class QSignalDumper { public: + static void setEnabled(bool); static void startDump(); static void endDump(); static void ignoreClass(const QByteArray &klass); static void clearIgnoredClasses(); +private: + static bool s_isEnabled; }; QT_END_NAMESPACE diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index e352f72e20..6b55ae43c6 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -643,7 +643,7 @@ Q_TESTLIB_EXPORT void qtest_qParseArgs(int argc, const char *const argv[], bool } else if (strcmp(argv[i], "-v2") == 0) { QTestLog::setVerboseLevel(2); } else if (strcmp(argv[i], "-vs") == 0) { - QSignalDumper::startDump(); + QSignalDumper::setEnabled(true); } else if (strcmp(argv[i], "-o") == 0) { if (i + 1 >= argc) { fprintf(stderr, "-o needs an extra parameter specifying the filename and optional format\n"); @@ -1485,6 +1485,8 @@ void TestMethods::invokeTests(QObject *testObject) const watchDog.reset(new WatchDog); } + QSignalDumper::startDump(); + if (!QTestResult::skipCurrentTest() && !QTest::currentTestFailed()) { if (m_initTestCaseMethod.isValid()) m_initTestCaseMethod.invoke(testObject, Qt::DirectConnection); @@ -1517,6 +1519,8 @@ void TestMethods::invokeTests(QObject *testObject) const } QTestResult::finishedCurrentTestFunction(); QTestResult::setCurrentTestFunction(nullptr); + + QSignalDumper::endDump(); } #if defined(Q_OS_WIN) @@ -1965,8 +1969,6 @@ void QTest::qCleanup() delete QBenchmarkGlobalData::current; QBenchmarkGlobalData::current = nullptr; - QSignalDumper::endDump(); - #if defined(Q_OS_MACOS) IOPMAssertionRelease(macPowerSavingDisabled); #endif diff --git a/tests/auto/testlib/selftests/expected_signaldumper.junitxml b/tests/auto/testlib/selftests/expected_signaldumper.junitxml index 90940e061f..1077816d8d 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.junitxml +++ b/tests/auto/testlib/selftests/expected_signaldumper.junitxml @@ -1,13 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> -<testsuite errors="126" failures="0" tests="13" name="tst_Signaldumper"> +<testsuite errors="124" failures="0" tests="13" name="tst_Signaldumper"> <properties> <property value="@INSERT_QT_VERSION_HERE@" name="QTestVersion"/> <property value="@INSERT_QT_VERSION_HERE@" name="QtVersion"/> <property value="" name="QtBuild"/> </properties> - <testcase result="pass" name="initTestCase"> - <!-- message="Signal: QThread(_POINTER_) started ()" type="info" --> - </testcase> + <testcase result="pass" name="initTestCase"/> <testcase result="pass" name="noConnections"> <!-- message="Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()" type="info" --> <!-- message="Signal: SignalSlotClass(_POINTER_) signalWithParameters (int(242), char(m))" type="info" --> @@ -154,11 +152,8 @@ <testcase result="pass" name="deletingSender"> <!-- message="Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()" type="info" --> </testcase> - <testcase result="pass" name="cleanupTestCase"> - <!-- message=" Signal: QThread(_POINTER_) finished ()" type="info" --> - </testcase> + <testcase result="pass" name="cleanupTestCase"/> <system-err> -<![CDATA[Signal: QThread(_POINTER_) started ()]]> <![CDATA[Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()]]> <![CDATA[Signal: SignalSlotClass(_POINTER_) signalWithParameters (int(242), char(m))]]> <![CDATA[Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()]]> @@ -283,6 +278,5 @@ <![CDATA[Signal: SignalSlotClass(_POINTER_) qVariantSignal (QVariant())]]> <![CDATA[Signal: SignalSlotClass(_POINTER_) qVariantSignal (QVariant())]]> <![CDATA[Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()]]> -<![CDATA[ Signal: QThread(_POINTER_) finished ()]]> </system-err> </testsuite> diff --git a/tests/auto/testlib/selftests/expected_signaldumper.lightxml b/tests/auto/testlib/selftests/expected_signaldumper.lightxml index 2d5e6e695a..b43475089e 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.lightxml +++ b/tests/auto/testlib/selftests/expected_signaldumper.lightxml @@ -4,9 +4,6 @@ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion> </Environment> <TestFunction name="initTestCase"> -<Message type="info" file="" line="0"> - <Description><![CDATA[Signal: QThread(_POINTER_) started ()]]></Description> -</Message> <Incident type="pass" file="" line="0" /> <Duration msecs="0"/> </TestFunction> @@ -579,7 +576,4 @@ <Incident type="pass" file="" line="0" /> <Duration msecs="0"/> </TestFunction> -<Message type="info" file="" line="0"> - <Description><![CDATA[ Signal: QThread(_POINTER_) finished ()]]></Description> -</Message> <Duration msecs="0"/> diff --git a/tests/auto/testlib/selftests/expected_signaldumper.tap b/tests/auto/testlib/selftests/expected_signaldumper.tap index 8e7b2c5744..4e0ae0bf4f 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.tap +++ b/tests/auto/testlib/selftests/expected_signaldumper.tap @@ -1,6 +1,5 @@ TAP version 13 # tst_Signaldumper -# Signal: QThread(_POINTER_) started () ok 1 - initTestCase() # Signal: SignalSlotClass(_POINTER_) signalWithoutParameters () # Signal: SignalSlotClass(_POINTER_) signalWithParameters (int(242), char(m)) @@ -146,7 +145,6 @@ ok 19 - variousTypes() # Signal: SignalSlotClass(_POINTER_) signalWithoutParameters () ok 20 - deletingSender() ok 21 - cleanupTestCase() -# Signal: QThread(_POINTER_) finished () 1..21 # tests 21 # pass 21 diff --git a/tests/auto/testlib/selftests/expected_signaldumper.teamcity b/tests/auto/testlib/selftests/expected_signaldumper.teamcity index f450cdc047..fcf52d48c0 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.teamcity +++ b/tests/auto/testlib/selftests/expected_signaldumper.teamcity @@ -1,6 +1,5 @@ ##teamcity[testSuiteStarted name='tst_Signaldumper' flowId='tst_Signaldumper'] ##teamcity[testStarted name='initTestCase()' flowId='tst_Signaldumper'] -##teamcity[testStdOut name='initTestCase()' out='INFO: Signal: QThread(_POINTER_) started ()' flowId='tst_Signaldumper'] ##teamcity[testFinished name='initTestCase()' flowId='tst_Signaldumper'] ##teamcity[testStarted name='noConnections()' flowId='tst_Signaldumper'] ##teamcity[testStdOut name='noConnections()' out='INFO: Signal: SignalSlotClass(_POINTER_) signalWithoutParameters ()|nINFO: Signal: SignalSlotClass(_POINTER_) signalWithParameters (int(242), char(m))' flowId='tst_Signaldumper'] diff --git a/tests/auto/testlib/selftests/expected_signaldumper.txt b/tests/auto/testlib/selftests/expected_signaldumper.txt index ac4a2aed44..89eae69719 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.txt +++ b/tests/auto/testlib/selftests/expected_signaldumper.txt @@ -1,6 +1,5 @@ ********* Start testing of tst_Signaldumper ********* Config: Using QtTest library -INFO : tst_Signaldumper::initTestCase() Signal: QThread(_POINTER_) started () PASS : tst_Signaldumper::initTestCase() INFO : tst_Signaldumper::noConnections() Signal: SignalSlotClass(_POINTER_) signalWithoutParameters () INFO : tst_Signaldumper::noConnections() Signal: SignalSlotClass(_POINTER_) signalWithParameters (int(242), char(m)) @@ -146,6 +145,5 @@ PASS : tst_Signaldumper::variousTypes() INFO : tst_Signaldumper::deletingSender() Signal: SignalSlotClass(_POINTER_) signalWithoutParameters () PASS : tst_Signaldumper::deletingSender() PASS : tst_Signaldumper::cleanupTestCase() -INFO : tst_Signaldumper::UnknownTestFunc() Signal: QThread(_POINTER_) finished () Totals: 21 passed, 0 failed, 0 skipped, 0 blacklisted, 0ms ********* Finished testing of tst_Signaldumper ********* diff --git a/tests/auto/testlib/selftests/expected_signaldumper.xml b/tests/auto/testlib/selftests/expected_signaldumper.xml index 37e7b3de92..2c251ec111 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.xml +++ b/tests/auto/testlib/selftests/expected_signaldumper.xml @@ -6,9 +6,6 @@ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion> </Environment> <TestFunction name="initTestCase"> -<Message type="info" file="" line="0"> - <Description><![CDATA[Signal: QThread(_POINTER_) started ()]]></Description> -</Message> <Incident type="pass" file="" line="0" /> <Duration msecs="0"/> </TestFunction> @@ -581,8 +578,5 @@ <Incident type="pass" file="" line="0" /> <Duration msecs="0"/> </TestFunction> -<Message type="info" file="" line="0"> - <Description><![CDATA[ Signal: QThread(_POINTER_) finished ()]]></Description> -</Message> <Duration msecs="0"/> </TestCase> |