aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2018-04-19 14:54:17 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2018-04-23 13:07:22 +0000
commitece99a4c5f8710b11cd17ff48f4fc2d5ced645b3 (patch)
tree511283efe12553d13488841c3a48d47110680b73
parentca2ad19ea60207b221d43dc5e4d28e90fa33bd11 (diff)
API: Fix ProductData::installableArtifacts()v1.11.1
We iterated over the wrong list when collecting the artifacts, so we missed generated artifacts that are not in the list of target artifacts. Change-Id: Iea90c5de217e0ad4efb77331a31b8a5d778c66d1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r--src/lib/corelib/api/projectdata.cpp2
-rw-r--r--tests/auto/api/testdata/installed-artifact/installed-artifact.qbs5
-rw-r--r--tests/auto/api/tst_api.cpp4
3 files changed, 8 insertions, 3 deletions
diff --git a/src/lib/corelib/api/projectdata.cpp b/src/lib/corelib/api/projectdata.cpp
index 3fd5f5ec3..3f865af58 100644
--- a/src/lib/corelib/api/projectdata.cpp
+++ b/src/lib/corelib/api/projectdata.cpp
@@ -541,7 +541,7 @@ QList<ArtifactData> ProductData::installableArtifacts() const
artifacts << a;
}
}
- for (const ArtifactData &a : targetArtifacts()) {
+ for (const ArtifactData &a : generatedArtifacts()) {
if (a.installData().isInstallable())
artifacts << a;
}
diff --git a/tests/auto/api/testdata/installed-artifact/installed-artifact.qbs b/tests/auto/api/testdata/installed-artifact/installed-artifact.qbs
index 7f7de9bc2..e2d18b2ea 100644
--- a/tests/auto/api/testdata/installed-artifact/installed-artifact.qbs
+++ b/tests/auto/api/testdata/installed-artifact/installed-artifact.qbs
@@ -23,5 +23,10 @@ Project {
qbs.install: true
qbs.installDir: "bin"
}
+ Group {
+ fileTagsFilter: "obj"
+ qbs.install: true
+ qbs.installDir: "objects"
+ }
}
}
diff --git a/tests/auto/api/tst_api.cpp b/tests/auto/api/tst_api.cpp
index d938065ee..a608d597c 100644
--- a/tests/auto/api/tst_api.cpp
+++ b/tests/auto/api/tst_api.cpp
@@ -1400,9 +1400,9 @@ void TestApi::installableFiles()
});
QVERIFY(product.isValid());
const QList<qbs::ArtifactData> beforeInstallableFiles = product.installableArtifacts();
- QCOMPARE(beforeInstallableFiles.size(), 2);
+ QCOMPARE(beforeInstallableFiles.size(), 3);
for (const qbs::ArtifactData &f : beforeInstallableFiles) {
- if (!f.filePath().endsWith("main.cpp")) {
+ if (!QFileInfo(f.filePath()).fileName().startsWith("main")) {
QVERIFY(f.isExecutable());
QString expectedTargetFilePath = qbs::Internal::HostOsInfo
::appendExecutableSuffix(QLatin1String("/tmp/usr/bin/installedApp"));