summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2013-06-07 17:59:42 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2013-06-10 15:41:33 +0200
commit8bb3658079a1f8b9319811ccdaa42b22f66224f4 (patch)
tree5582dbd0cc4c934cb497c47c129e179d9dfb5fc5 /tests
parentde8d4deddbf6668d8e8965c40121a9bac2636eae (diff)
downloadqbs-8bb3658079a1f8b9319811ccdaa42b22f66224f4.tar.gz
fix tracking of addition/removal of Q_OBJECT headers
Autotest: TestBlackbox::missingQObjectHeader Change-Id: I96127c47dfd3a2e38801dc1305ce7f9c528a94e3 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp25
-rw-r--r--tests/auto/blackbox/tst_blackbox.h3
2 files changed, 25 insertions, 3 deletions
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp
index f680bac13..2f81b4eb6 100644
--- a/tests/auto/blackbox/tst_blackbox.cpp
+++ b/tests/auto/blackbox/tst_blackbox.cpp
@@ -746,7 +746,7 @@ void TestBlackbox::codegen()
QVERIFY(QFile::exists(buildDir + HostOsInfo::appendExecutableSuffix("/codegen")));
}
-void TestBlackbox::missingQObjectHeader()
+void TestBlackbox::trackAddQObjectHeader()
{
QDir::setCurrent(testDataDir + "/missingqobjectheader");
const QString qbsFileName("missingheader.qbs");
@@ -758,14 +758,35 @@ void TestBlackbox::missingQObjectHeader()
QbsRunParameters params;
params.expectFailure = true;
QVERIFY(runQbs(params) != 0);
+ waitForNewTimestamp();
QVERIFY(qbsFile.open(QIODevice::WriteOnly | QIODevice::Truncate));
qbsFile.write("import qbs.base 1.0\nCppApplication {\n Depends { name: 'Qt.core' }\n"
" files: ['main.cpp', 'myobject.cpp','myobject.h']\n}");
qbsFile.close();
- QEXPECT_FAIL("", "FIXME: This case is known to be broken", Abort);
+ params.expectFailure = false;
QCOMPARE(runQbs(params), 0);
}
+void TestBlackbox::trackRemoveQObjectHeader()
+{
+ QDir::setCurrent(testDataDir + "/missingqobjectheader");
+ const QString qbsFileName("missingheader.qbs");
+ QFile qbsFile(qbsFileName);
+ QVERIFY(qbsFile.open(QIODevice::WriteOnly | QIODevice::Truncate));
+ qbsFile.write("import qbs.base 1.0\nCppApplication {\n Depends { name: 'Qt.core' }\n"
+ " files: ['main.cpp', 'myobject.cpp','myobject.h']\n}");
+ qbsFile.close();
+ QbsRunParameters params;
+ QCOMPARE(runQbs(params), 0);
+ waitForNewTimestamp();
+ QVERIFY(qbsFile.open(QIODevice::WriteOnly | QIODevice::Truncate));
+ qbsFile.write("import qbs.base 1.0\nCppApplication {\n Depends { name: 'Qt.core' }\n"
+ " files: ['main.cpp', 'myobject.cpp']\n}");
+ qbsFile.close();
+ params.expectFailure = true;
+ QVERIFY(runQbs(params) != 0);
+}
+
void TestBlackbox::overrideProjectProperties()
{
QDir::setCurrent(testDataDir + "/overrideProjectProperties");
diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h
index 35fa2b347..9121ca96b 100644
--- a/tests/auto/blackbox/tst_blackbox.h
+++ b/tests/auto/blackbox/tst_blackbox.h
@@ -118,7 +118,8 @@ private slots:
void recursiveWildcards();
void ruleConditions();
void codegen();
- void missingQObjectHeader();
+ void trackAddQObjectHeader();
+ void trackRemoveQObjectHeader();
void overrideProjectProperties();
void productProperties();
void propertyChanges();