summaryrefslogtreecommitdiff
path: root/tests/auto/api/tst_api.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/api/tst_api.cpp')
-rw-r--r--tests/auto/api/tst_api.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/api/tst_api.cpp b/tests/auto/api/tst_api.cpp
index 8b5021b1e..513c61151 100644
--- a/tests/auto/api/tst_api.cpp
+++ b/tests/auto/api/tst_api.cpp
@@ -134,6 +134,24 @@ void TestApi::installableFiles()
QCOMPARE(installableFiles.last().targetFilePath(), QLatin1String("/tmp/dir/file2.txt"));
}
+void TestApi::listBuildSystemFiles()
+{
+ qbs::SetupProjectParameters setupParams = defaultSetupParameters();
+ const QString projectDir
+ = QDir::cleanPath(QLatin1String(SRCDIR "/../blackbox/testdata/subprojects"));
+ const QString topLevelProjectFile = projectDir + QLatin1String("/toplevelproject.qbs");
+ setupParams.setProjectFilePath(topLevelProjectFile);
+ QScopedPointer<qbs::SetupProjectJob> job(qbs::Project::setupProject(setupParams,
+ m_logSink, 0));
+ waitForFinished(job.data());
+ QVERIFY2(!job->error().hasError(), qPrintable(job->error().toString()));
+ const QSet<QString> buildSystemFiles = job->project().buildSystemFiles();
+ QVERIFY(buildSystemFiles.contains(topLevelProjectFile));
+ QVERIFY(buildSystemFiles.contains(projectDir + QLatin1String("/subproject2/subproject2.qbs")));
+ QVERIFY(buildSystemFiles.contains(projectDir
+ + QLatin1String("/subproject2/subproject3/subproject3.qbs")));
+}
+
qbs::SetupProjectParameters TestApi::defaultSetupParameters() const
{
qbs::SetupProjectParameters setupParams;