diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2017-07-27 09:44:58 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2017-07-28 13:35:46 +0000 |
commit | 80e03bbd9a42401d50af450aff5351c3a0c95444 (patch) | |
tree | 7c39e71f4f9fd5ca74003860b2645a917707b45c /tests/auto/qml/debugger/qqmlprofilerservice | |
parent | 50bc2ac834502b2051dccaaec22da010a3ef5e70 (diff) |
Ignore debugger failures with GCC on Windows
Capturing the output of the started process mysteriously fails on
Windows with gcc. While the nested event loop is run, the readyRead()
signal is never emitted. Only after the timer fired and the event loop
is terminated, we receive the output we were expecting.
Some tests needed adapting to the initializing sub-function failing in
QVERIFY/QCOMPARE calls, in order for the process to not crash and the
blacklisting to work.
Task-number: QTQAINFRA-1334
Change-Id: I4804d94580e7db65595137d19d7b75d75c243257
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Diffstat (limited to 'tests/auto/qml/debugger/qqmlprofilerservice')
-rw-r--r-- | tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro | 2 | ||||
-rw-r--r-- | tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp | 15 |
2 files changed, 16 insertions, 1 deletions
diff --git a/tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro b/tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro index 71a58d6f34..f5e3dbdc2f 100644 --- a/tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro +++ b/tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro @@ -10,7 +10,7 @@ include(../shared/debugutil.pri) TESTDATA = data/* -QT += core qml testlib gui-private core-private +QT += core qml testlib testlib-private gui-private core-private OTHER_FILES += \ data/pixmapCacheTest.qml \ diff --git a/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp b/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp index 692e70d7da..b8e1f1f21d 100644 --- a/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp +++ b/tests/auto/qml/debugger/qqmlprofilerservice/tst_qqmlprofilerservice.cpp @@ -33,6 +33,7 @@ #include <private/qqmldebugconnection_p.h> #include <QtTest/qtest.h> +#include <private/qtestresult_p.h> #include <QtCore/qlibraryinfo.h> #define STR_PORT_FROM "13773" @@ -562,6 +563,8 @@ void tst_QQmlProfilerService::connect() void tst_QQmlProfilerService::pixmapCacheData() { connect(true, "pixmapCacheTest.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true); QVERIFY(QQmlDebugTest::waitForSignal(m_process, SIGNAL(readyReadStandardOutput()))); @@ -599,6 +602,8 @@ void tst_QQmlProfilerService::pixmapCacheData() void tst_QQmlProfilerService::scenegraphData() { connect(true, "scenegraphTest.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true); @@ -656,6 +661,8 @@ void tst_QQmlProfilerService::scenegraphData() void tst_QQmlProfilerService::profileOnExit() { connect(true, "exit.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true); @@ -666,6 +673,8 @@ void tst_QQmlProfilerService::profileOnExit() void tst_QQmlProfilerService::controlFromJS() { connect(true, "controlFromJS.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(false); checkTraceReceived(); @@ -675,6 +684,8 @@ void tst_QQmlProfilerService::controlFromJS() void tst_QQmlProfilerService::signalSourceLocation() { connect(true, "signalSourceLocation.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true); while (!(m_process->output().contains(QLatin1String("500")))) @@ -698,6 +709,8 @@ void tst_QQmlProfilerService::signalSourceLocation() void tst_QQmlProfilerService::javascript() { connect(true, "javascript.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true); while (!(m_process->output().contains(QLatin1String("done")))) @@ -728,6 +741,8 @@ void tst_QQmlProfilerService::javascript() void tst_QQmlProfilerService::flushInterval() { connect(true, "timer.qml"); + if (QTest::currentTestFailed() || QTestResult::skipCurrentTest()) + return; m_client->sendRecordingStatus(true, -1, 1); |