diff options
-rw-r--r-- | src/lib/corelib/buildgraph/inputartifactscanner.cpp | 2 | ||||
-rw-r--r-- | tests/auto/blackbox/testdata-qt/qrc/bla.cpp | 13 | ||||
-rw-r--r-- | tests/auto/blackbox/testdata-qt/qrc/bla.qrc | 1 | ||||
-rw-r--r-- | tests/auto/blackbox/testdata-qt/qrc/subdir/dummy.txt | 0 | ||||
-rw-r--r-- | tests/auto/blackbox/tst_blackboxqt.cpp | 9 |
5 files changed, 22 insertions, 3 deletions
diff --git a/src/lib/corelib/buildgraph/inputartifactscanner.cpp b/src/lib/corelib/buildgraph/inputartifactscanner.cpp index 644b95d79..d183b1879 100644 --- a/src/lib/corelib/buildgraph/inputartifactscanner.cpp +++ b/src/lib/corelib/buildgraph/inputartifactscanner.cpp @@ -255,6 +255,8 @@ void InputArtifactScanner::resolveScanResultDependencies(const Artifact *inputAr if (FileInfo::isAbsolute(dependencyFilePath)) { resolveDepencency(dependency, inputArtifact->product.get(), &resolvedDependency); + if (resolvedDependency.filePath.isEmpty()) + goto unresolved; goto resolved; } diff --git a/tests/auto/blackbox/testdata-qt/qrc/bla.cpp b/tests/auto/blackbox/testdata-qt/qrc/bla.cpp index e04f873a6..5375b33b6 100644 --- a/tests/auto/blackbox/testdata-qt/qrc/bla.cpp +++ b/tests/auto/blackbox/testdata-qt/qrc/bla.cpp @@ -26,8 +26,19 @@ ** ****************************************************************************/ +#include <QFileInfo> + int main() { - return 3; + QFileInfo f(":/stuff.txt"); + if (!f.exists()) + return 1; + if (!f.isFile()) + return 2; + QFileInfo d(":/subdir"); + if (!d.exists()) + return 3; + if (!d.isDir()) + return 4; } diff --git a/tests/auto/blackbox/testdata-qt/qrc/bla.qrc b/tests/auto/blackbox/testdata-qt/qrc/bla.qrc index 46c93847e..cad4c6cd3 100644 --- a/tests/auto/blackbox/testdata-qt/qrc/bla.qrc +++ b/tests/auto/blackbox/testdata-qt/qrc/bla.qrc @@ -1,5 +1,6 @@ <RCC> <qresource prefix="/"> <file>stuff.txt</file> + <file>subdir/</file> </qresource> </RCC> diff --git a/tests/auto/blackbox/testdata-qt/qrc/subdir/dummy.txt b/tests/auto/blackbox/testdata-qt/qrc/subdir/dummy.txt new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/tests/auto/blackbox/testdata-qt/qrc/subdir/dummy.txt diff --git a/tests/auto/blackbox/tst_blackboxqt.cpp b/tests/auto/blackbox/tst_blackboxqt.cpp index 03e52590b..46f9d2e21 100644 --- a/tests/auto/blackbox/tst_blackboxqt.cpp +++ b/tests/auto/blackbox/tst_blackboxqt.cpp @@ -365,7 +365,7 @@ void TestBlackboxQt::track_qobject_change() void TestBlackboxQt::track_qrc() { QDir::setCurrent(testDataDir + "/qrc"); - QCOMPARE(runQbs(), 0); + QCOMPARE(runQbs(QbsRunParameters("run")), 0); const QString fileName = relativeExecutableFilePath("i"); QVERIFY2(regularFileExists(fileName), qPrintable(fileName)); QDateTime dt = QFileInfo(fileName).lastModified(); @@ -377,9 +377,14 @@ void TestBlackboxQt::track_qrc() f.write("bla"); f.close(); } - QCOMPARE(runQbs(), 0); + QCOMPARE(runQbs(QbsRunParameters("run")), 0); QVERIFY(regularFileExists(fileName)); QVERIFY(dt < QFileInfo(fileName).lastModified()); + WAIT_FOR_NEW_TIMESTAMP(); + touch("i.qbs"); + QCOMPARE(runQbs(), 0); + QVERIFY2(m_qbsStdout.contains("Resolving"), m_qbsStdout.constData()); + QVERIFY2(!m_qbsStdout.contains("rcc"), m_qbsStdout.constData()); } void TestBlackboxQt::unmocable() |