From 847020fb6d2b943d3e09bcc9a99b340b5821297e Mon Sep 17 00:00:00 2001 From: Jake Petroules Date: Fri, 11 Jul 2014 16:47:51 -0400 Subject: Add support for compiling OS X icon sets. Task-number: QBS-493 Change-Id: Ie6e4a00f672ce4305f03e00ec0b0b7ebcbd942c3 Reviewed-by: Joerg Bornemann --- .../auto/blackbox/testdata/ib/iconset/iconset.qbs | 7 +++++ .../ib/iconset/white.iconset/icon_16x16.png | Bin 0 -> 3303 bytes .../ib/iconset/white.iconset/icon_16x16@2x.png | Bin 0 -> 3336 bytes .../blackbox/testdata/ib/iconsetapp/iconsetapp.qbs | 6 +++++ tests/auto/blackbox/testdata/ib/iconsetapp/main.c | 4 +++ .../ib/iconsetapp/white.iconset/icon_16x16.png | Bin 0 -> 3303 bytes .../ib/iconsetapp/white.iconset/icon_16x16@2x.png | Bin 0 -> 3336 bytes tests/auto/blackbox/tst_blackbox.cpp | 30 +++++++++++++++++++++ tests/auto/blackbox/tst_blackbox.h | 2 ++ 9 files changed, 49 insertions(+) create mode 100644 tests/auto/blackbox/testdata/ib/iconset/iconset.qbs create mode 100644 tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16.png create mode 100644 tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16@2x.png create mode 100644 tests/auto/blackbox/testdata/ib/iconsetapp/iconsetapp.qbs create mode 100644 tests/auto/blackbox/testdata/ib/iconsetapp/main.c create mode 100644 tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16.png create mode 100644 tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16@2x.png (limited to 'tests/auto/blackbox') diff --git a/tests/auto/blackbox/testdata/ib/iconset/iconset.qbs b/tests/auto/blackbox/testdata/ib/iconset/iconset.qbs new file mode 100644 index 000000000..1d563f180 --- /dev/null +++ b/tests/auto/blackbox/testdata/ib/iconset/iconset.qbs @@ -0,0 +1,7 @@ +import qbs + +Product { + Depends { name: "ib" } + type: ["icns"] + files: ["white.iconset"] +} diff --git a/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16.png b/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16.png new file mode 100644 index 000000000..65ff1ff57 Binary files /dev/null and b/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16.png differ diff --git a/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16@2x.png b/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16@2x.png new file mode 100644 index 000000000..a5c69bccd Binary files /dev/null and b/tests/auto/blackbox/testdata/ib/iconset/white.iconset/icon_16x16@2x.png differ diff --git a/tests/auto/blackbox/testdata/ib/iconsetapp/iconsetapp.qbs b/tests/auto/blackbox/testdata/ib/iconsetapp/iconsetapp.qbs new file mode 100644 index 000000000..7e5323a0c --- /dev/null +++ b/tests/auto/blackbox/testdata/ib/iconsetapp/iconsetapp.qbs @@ -0,0 +1,6 @@ +import qbs + +CppApplication { + Depends { name: "ib" } + files: ["main.c", "white.iconset"] +} diff --git a/tests/auto/blackbox/testdata/ib/iconsetapp/main.c b/tests/auto/blackbox/testdata/ib/iconsetapp/main.c new file mode 100644 index 000000000..905869dfa --- /dev/null +++ b/tests/auto/blackbox/testdata/ib/iconsetapp/main.c @@ -0,0 +1,4 @@ +int main() +{ + return 0; +} diff --git a/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16.png b/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16.png new file mode 100644 index 000000000..65ff1ff57 Binary files /dev/null and b/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16.png differ diff --git a/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16@2x.png b/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16@2x.png new file mode 100644 index 000000000..a5c69bccd Binary files /dev/null and b/tests/auto/blackbox/testdata/ib/iconsetapp/white.iconset/icon_16x16@2x.png differ diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index 605582961..c791a6993 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -2265,6 +2265,36 @@ void TestBlackbox::testTypeScript() QVERIFY(regularFileExists(productBuildDir("animals") + "/main.js")); } +void TestBlackbox::testIconset() +{ + if (!HostOsInfo::isOsxHost()) + SKIP_TEST("only applies on OS X"); + + QDir::setCurrent(testDataDir + QLatin1String("/ib/iconset")); + + QbsRunParameters params; + params.arguments = QStringList() << "-f" << "iconset.qbs"; + QCOMPARE(runQbs(params), 0); + + QVERIFY((bool)m_qbsStdout.contains("warning")); // because some images are missing + QVERIFY(regularFileExists(productBuildDir("iconset") + "/white.icns")); +} + +void TestBlackbox::testIconsetApp() +{ + if (!HostOsInfo::isOsxHost()) + SKIP_TEST("only applies on OS X"); + + QDir::setCurrent(testDataDir + QLatin1String("/ib/iconsetapp")); + + QbsRunParameters params; + params.arguments = QStringList() << "-f" << "iconsetapp.qbs"; + QCOMPARE(runQbs(params), 0); + + QVERIFY((bool)m_qbsStdout.contains("warning")); // because some images are missing + QVERIFY(regularFileExists(productBuildDir("iconsetapp") + "/iconsetapp.app/Contents/Resources/white.icns")); +} + QString TestBlackbox::uniqueProductName(const QString &productName) const { return productName + '.' + buildProfileName; diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h index cf3ebb146..0ac522d76 100644 --- a/tests/auto/blackbox/tst_blackbox.h +++ b/tests/auto/blackbox/tst_blackbox.h @@ -185,6 +185,8 @@ private slots: void testWiX(); void testNodeJs(); void testTypeScript(); + void testIconset(); + void testIconsetApp(); private: QString uniqueProductName(const QString &productName) const; -- cgit v1.2.3