aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2016-10-17 11:14:30 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2016-10-28 11:01:46 +0000
commit7f73d219d3b38c91bb666450a94d8e98b8aecc53 (patch)
tree1bc1a336b98c581560d1d619a92d6802082aa187 /tests
parentf829298a6f9810ad6182984cd56315846368fd98 (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')
-rw-r--r--tests/auto/blackbox/testdata/auto-qrc/auto-qrc.qbs38
-rw-r--r--tests/auto/blackbox/testdata/auto-qrc/main.cpp15
-rw-r--r--tests/auto/blackbox/testdata/auto-qrc/qrc-base/resource1.txt1
-rw-r--r--tests/auto/blackbox/testdata/auto-qrc/qrc-base/subdir/resource2.txt1
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp8
-rw-r--r--tests/auto/blackbox/tst_blackbox.h1
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();