diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2016-10-17 11:14:30 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2016-10-28 11:01:46 +0000 |
commit | 7f73d219d3b38c91bb666450a94d8e98b8aecc53 (patch) | |
tree | 1bc1a336b98c581560d1d619a92d6802082aa187 /tests | |
parent | f829298a6f9810ad6182984cd56315846368fd98 (diff) |
Add support for generating qrc files
[ChangeLog] Added support for generating qrc files.
Change-Id: I9c5d703fcb6f8c14606d5abf66e8edfd4959f364
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Diffstat (limited to 'tests')
6 files changed, 64 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata/auto-qrc/auto-qrc.qbs b/tests/auto/blackbox/testdata/auto-qrc/auto-qrc.qbs new file mode 100644 index 000000000..7ad4a5798 --- /dev/null +++ b/tests/auto/blackbox/testdata/auto-qrc/auto-qrc.qbs @@ -0,0 +1,38 @@ +import qbs + +Project { + QtApplication { + name: "app" + files: ["main.cpp"] + + // TODO: Use two groups with different base dirs once QBS-1005 is fixed. + Qt.core.resourceSourceBase: "qrc-base" + Qt.core.resourcePrefix: "/thePrefix" + Group { + prefix: "qrc-base/" + files: [ + "resource1.txt", + "subdir/resource2.txt", + ] + fileTags: ["qt.core.resource_data"] + } + } + + Product { + name: "runner" + type: ["runner"] + Depends { name: "app" } + Rule { + inputsFromDependencies: ["application"] + Artifact { + filePath: "dummy" + fileTags: ["runner"] + } + prepare: { + var cmd = new Command(input.filePath); + cmd.description = "running " + input.filePath; + return [cmd]; + } + } + } +} diff --git a/tests/auto/blackbox/testdata/auto-qrc/main.cpp b/tests/auto/blackbox/testdata/auto-qrc/main.cpp new file mode 100644 index 000000000..64acf8680 --- /dev/null +++ b/tests/auto/blackbox/testdata/auto-qrc/main.cpp @@ -0,0 +1,15 @@ +#include <QFile> + +#include <iostream> + +int main() +{ + QFile resource1(":/thePrefix/resource1.txt"); + if (!resource1.open(QIODevice::ReadOnly)) + return 1; + QFile resource2(":/thePrefix/subdir/resource2.txt"); + if (!resource2.open(QIODevice::ReadOnly)) + return 2; + std::cout << "resource data: " << resource1.readAll().constData() + << resource2.readAll().constData() << std::endl; +} diff --git a/tests/auto/blackbox/testdata/auto-qrc/qrc-base/resource1.txt b/tests/auto/blackbox/testdata/auto-qrc/qrc-base/resource1.txt new file mode 100644 index 000000000..edf22a3d6 --- /dev/null +++ b/tests/auto/blackbox/testdata/auto-qrc/qrc-base/resource1.txt @@ -0,0 +1 @@ +resource1 diff --git a/tests/auto/blackbox/testdata/auto-qrc/qrc-base/subdir/resource2.txt b/tests/auto/blackbox/testdata/auto-qrc/qrc-base/subdir/resource2.txt new file mode 100644 index 000000000..b7c270096 --- /dev/null +++ b/tests/auto/blackbox/testdata/auto-qrc/qrc-base/subdir/resource2.txt @@ -0,0 +1 @@ +resource2 diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index 03c1df6b0..a5280729c 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -4056,6 +4056,14 @@ void TestBlackbox::assetCatalog_data() QTest::newRow("unflattened") << false; } +void TestBlackbox::autoQrc() +{ + QDir::setCurrent(testDataDir + "/auto-qrc"); + QCOMPARE(runQbs(), 0); + QVERIFY2(m_qbsStdout.simplified().contains("resource data: resource1 resource2"), + m_qbsStdout.constData()); +} + void TestBlackbox::objcArc() { if (!HostOsInfo::isMacosHost()) diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h index c7a344e60..9e88caa43 100644 --- a/tests/auto/blackbox/tst_blackbox.h +++ b/tests/auto/blackbox/tst_blackbox.h @@ -44,6 +44,7 @@ private slots: void assembly(); void assetCatalog(); void assetCatalog_data(); + void autoQrc(); void badInterpreter(); void buildDirectories(); void bundleStructure(); |