diff options
author | Jake Petroules <jake.petroules@petroules.com> | 2014-07-11 16:45:34 -0400 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@digia.com> | 2014-07-22 14:41:07 +0200 |
commit | 496707ce5ae88e124617553e8e24d887a750777c (patch) | |
tree | 9b4c9b43d6d7e226e9aeb77e873c81edf285af41 /tests/auto/blackbox/tst_blackbox.cpp | |
parent | 8c0a975afacc10f0f2c9defffc95b8ae22e8da63 (diff) |
Add support for compiling Xcode asset catalogs.
Task-number: QBS-389
Change-Id: I2d93a55228c6ada801ed889404fac753182b82f6
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'tests/auto/blackbox/tst_blackbox.cpp')
-rw-r--r-- | tests/auto/blackbox/tst_blackbox.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index c791a6993..8e0edef9e 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -2295,6 +2295,43 @@ void TestBlackbox::testIconsetApp() QVERIFY(regularFileExists(productBuildDir("iconsetapp") + "/iconsetapp.app/Contents/Resources/white.icns")); } +void TestBlackbox::testAssetCatalog() +{ + if (!HostOsInfo::isOsxHost()) + SKIP_TEST("only applies on OS X"); + + QDir::setCurrent(testDataDir + QLatin1String("/ib/assetcatalog")); + + QbsRunParameters params; + params.arguments = QStringList() << "-f" << "assetcatalogempty.qbs"; + QCOMPARE(runQbs(params), 0); + + // empty asset catalogs must still produce output + QVERIFY((bool)m_qbsStdout.contains("actool")); + + // should not produce a CAR since minimumOsxVersion will be < 10.9 + QVERIFY(!regularFileExists(productBuildDir("assetcatalogempty") + "/assetcatalogempty.app/Contents/Resources/Assets.car")); + + rmDirR(buildDir); + params.arguments.append("cpp.minimumOsxVersion:10.9"); // force CAR generation + QCOMPARE(runQbs(params), 0); + + // empty asset catalogs must still produce output + QVERIFY((bool)m_qbsStdout.contains("actool")); + QVERIFY(regularFileExists(productBuildDir("assetcatalogempty") + "/assetcatalogempty.app/Contents/Resources/Assets.car")); + + // this asset catalog happens to have an embedded icon set, + // but this should NOT be built since it is not in the files list + QVERIFY(!(bool)m_qbsStdout.contains("iconutil")); + + // now we'll add the iconset + rmDirR(buildDir); + params.arguments.append("project.includeIconset:true"); + QCOMPARE(runQbs(params), 0); + QVERIFY((bool)m_qbsStdout.contains("actool")); + QVERIFY((bool)m_qbsStdout.contains("iconutil")); +} + QString TestBlackbox::uniqueProductName(const QString &productName) const { return productName + '.' + buildProfileName; |