diff --git a/tests/auto/corelib/kernel/qobject/.gitignore b/tests/auto/corelib/kernel/qobject/.gitignore index ea4d6d7f067..7970e32c8f0 100644 --- a/tests/auto/corelib/kernel/qobject/.gitignore +++ b/tests/auto/corelib/kernel/qobject/.gitignore @@ -1,3 +1,3 @@ tst_qobject -signalbug -signalbug.exe +signalbug/signalbug +signalbug/signalbug.exe diff --git a/tests/auto/corelib/kernel/qobject/qobject.pro b/tests/auto/corelib/kernel/qobject/qobject.pro index 113e14a61d1..ee48f56b1de 100644 --- a/tests/auto/corelib/kernel/qobject/qobject.pro +++ b/tests/auto/corelib/kernel/qobject/qobject.pro @@ -1,3 +1,3 @@ TEMPLATE = subdirs -SUBDIRS = tst_qobject.pro signalbug.pro +SUBDIRS = signalbug tst_qobject.pro CONFIG += parallel_test diff --git a/tests/auto/corelib/kernel/qobject/signalbug.cpp b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp similarity index 100% rename from tests/auto/corelib/kernel/qobject/signalbug.cpp rename to tests/auto/corelib/kernel/qobject/signalbug/signalbug.cpp diff --git a/tests/auto/corelib/kernel/qobject/signalbug.h b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.h similarity index 100% rename from tests/auto/corelib/kernel/qobject/signalbug.h rename to tests/auto/corelib/kernel/qobject/signalbug/signalbug.h diff --git a/tests/auto/corelib/kernel/qobject/signalbug.pro b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro similarity index 73% rename from tests/auto/corelib/kernel/qobject/signalbug.pro rename to tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro index ed3adf02426..19d36a63a13 100644 --- a/tests/auto/corelib/kernel/qobject/signalbug.pro +++ b/tests/auto/corelib/kernel/qobject/signalbug/signalbug.pro @@ -1,9 +1,9 @@ TEMPLATE = app -TARGET = DEPENDPATH += . INCLUDEPATH += . CONFIG -= app_bundle debug_and_release -DESTDIR=. +CONFIG += console +DESTDIR = ./ QT -= gui wince*: { LIBS += coredll.lib @@ -13,5 +13,5 @@ HEADERS += signalbug.h SOURCES += signalbug.cpp # This app is testdata for tst_qobject -target.path = $$[QT_INSTALL_TESTS]/tst_qobject +target.path = $$[QT_INSTALL_TESTS]/tst_qobject/$$TARGET INSTALLS += target diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index 8f938a79feb..05b9229c3d1 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -65,6 +65,7 @@ class tst_QObject : public QObject { Q_OBJECT private slots: + void initTestCase(); void disconnect(); void connectByName(); void connectSignalsToSignalsWithDefaultArguments(); @@ -236,6 +237,12 @@ public slots: int ReceiverObject::sequence = 0; +void tst_QObject::initTestCase() +{ + const QString testDataDir = QFileInfo(QFINDTESTDATA("signalbug")).absolutePath(); + QVERIFY2(QDir::setCurrent(testDataDir), qPrintable("Could not chdir to " + testDataDir)); +} + void tst_QObject::disconnect() { SenderObject *s = new SenderObject; @@ -2794,7 +2801,9 @@ void tst_QObject::recursiveSignalEmission() { QProcess proc; // signalbug helper app should always be next to this test binary - proc.start(QCoreApplication::applicationDirPath() + "/signalbug"); + const QString path = QStringLiteral("signalbug/signalbug"); + proc.start(path); + QVERIFY2(proc.waitForStarted(), qPrintable(QString::fromLatin1("Cannot start '%1': %2").arg(path, proc.errorString()))); QVERIFY(proc.waitForFinished()); QVERIFY(proc.exitStatus() == QProcess::NormalExit); QCOMPARE(proc.exitCode(), 0);