summaryrefslogtreecommitdiffstats
path: root/tests/auto/tools/qmake/tst_qmake.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/tools/qmake/tst_qmake.cpp')
-rw-r--r--tests/auto/tools/qmake/tst_qmake.cpp129
1 files changed, 39 insertions, 90 deletions
diff --git a/tests/auto/tools/qmake/tst_qmake.cpp b/tests/auto/tools/qmake/tst_qmake.cpp
index 8d7f7bbc68..ac94d1a2b9 100644
--- a/tests/auto/tools/qmake/tst_qmake.cpp
+++ b/tests/auto/tools/qmake/tst_qmake.cpp
@@ -39,6 +39,14 @@
#include <QStandardPaths>
#include <QDir>
+#if defined(DEBUG_BUILD)
+# define DIR_INFIX "debug/"
+#elif defined(RELEASE_BUILD)
+# define DIR_INFIX "release/"
+#else
+# define DIR_INFIX ""
+#endif
+
class tst_qmake : public QObject
{
Q_OBJECT
@@ -60,12 +68,6 @@ private slots:
void simple_dll();
void subdirs();
void subdir_via_pro_file_extra_target();
- void functions();
- void operators();
- void variables();
- void func_export();
- void func_variables();
- void comments();
void duplicateLibraryEntries();
void export_across_file_boundaries();
void include_dir();
@@ -80,11 +82,10 @@ private slots:
#if defined(Q_OS_MAC)
void bundle_spaces();
#endif
- void includefunction();
void substitutes();
void project();
void proFileCache();
- void json();
+ void resources();
private:
TestCompiler test_compiler;
@@ -253,43 +254,6 @@ void tst_qmake::subdir_via_pro_file_extra_target()
QVERIFY( test_compiler.make( workDir, "extratarget" ));
}
-void tst_qmake::functions()
-{
- QString workDir = base_path + "/testdata/functions";
- QString buildDir = base_path + "/testdata/functions_build";
- QVERIFY( test_compiler.qmake( workDir, "functions", buildDir ));
-}
-
-void tst_qmake::operators()
-{
- QString workDir = base_path + "/testdata/operators";
- QVERIFY( test_compiler.qmake( workDir, "operators" ));
-}
-
-void tst_qmake::variables()
-{
- QString workDir = base_path + "/testdata/variables";
- QVERIFY(test_compiler.qmake( workDir, "variables" ));
-}
-
-void tst_qmake::func_export()
-{
- QString workDir = base_path + "/testdata/func_export";
- QVERIFY(test_compiler.qmake( workDir, "func_export" ));
-}
-
-void tst_qmake::func_variables()
-{
- QString workDir = base_path + "/testdata/func_variables";
- QVERIFY(test_compiler.qmake( workDir, "func_variables" ));
-}
-
-void tst_qmake::comments()
-{
- QString workDir = base_path + "/testdata/comments";
- QVERIFY(test_compiler.qmake( workDir, "comments" ));
-}
-
void tst_qmake::duplicateLibraryEntries()
{
QVERIFY(true);
@@ -490,26 +454,6 @@ void tst_qmake::bundle_spaces()
}
#endif // defined(Q_OS_MAC)
-void tst_qmake::includefunction()
-{
- QString workDir = base_path + "/testdata/include_function";
- QRegExp warningMsg("Cannot read .*: No such file or directory");
- QVERIFY(test_compiler.qmake( workDir, "include_existing_file"));
- QVERIFY(!test_compiler.commandOutput().contains(warningMsg));
-
- // test include() usage on a missing file
- test_compiler.clearCommandOutput();
- workDir = base_path + "/testdata/include_function";
- QVERIFY(test_compiler.qmake( workDir, "include_missing_file" ));
- QVERIFY(test_compiler.commandOutput().contains(warningMsg));
-
- // test include() usage on a missing file when all function parameters are used
- test_compiler.clearCommandOutput();
- workDir = base_path + "/testdata/include_function";
- QVERIFY(test_compiler.qmake( workDir, "include_missing_file2" ));
- QVERIFY(test_compiler.commandOutput().contains(warningMsg));
-}
-
void tst_qmake::substitutes()
{
QString workDir = base_path + "/testdata/substitutes";
@@ -555,32 +499,37 @@ void tst_qmake::proFileCache()
QVERIFY( test_compiler.qmake( workDir, "pro_file_cache" ));
}
-void tst_qmake::json()
+void tst_qmake::resources()
{
- QString workDir = base_path + "/testdata/json";
- QVERIFY( test_compiler.qmake( workDir, "json.pro" ));
- QString output = test_compiler.commandOutput();
-
- // all keys
- QVERIFY(output.contains("json._KEYS_ array false null number object string true"));
- // array
- QVERIFY(output.contains("json.array._KEYS_ 0 1 2"));
- QVERIFY(output.contains("json.array.0 arrayItem1"));
- QVERIFY(output.contains("json.array.1 arrayItem2"));
- QVERIFY(output.contains("json.array.2 arrayItem3"));
- // object
- QVERIFY(output.contains("json.object._KEYS_ key1 key2"));
- QVERIFY(output.contains("json.object.key1 objectValue1"));
- QVERIFY(output.contains("json.object.key1 objectValue1"));
- // value types
- QVERIFY(output.contains("json.string: test string"));
- QVERIFY(output.contains("json.number: 999"));
- QVERIFY(output.contains("json.true: true"));
- QVERIFY(output.contains("json.false: false"));
- QVERIFY(output.contains("json.null:"));
- // functional booleans
- QVERIFY(output.contains("json.true is true"));
- QVERIFY(output.contains("json.false is false"));
+ QString workDir = base_path + "/testdata/resources";
+ QVERIFY(test_compiler.qmake(workDir, "resources"));
+
+ {
+ QFile qrcFile(workDir + "/.rcc/" DIR_INFIX "qmake_pro_file.qrc");
+ QVERIFY(qrcFile.exists());
+ QVERIFY(qrcFile.open(QFile::ReadOnly));
+ QByteArray qrcXml = qrcFile.readAll();
+ QVERIFY(qrcXml.contains("alias=\"resources.pro\""));
+ QVERIFY(qrcXml.contains("prefix=\"/prefix\""));
+ }
+
+ {
+ QFile qrcFile(workDir + "/.rcc/" DIR_INFIX "qmake_subdir.qrc");
+ QVERIFY(qrcFile.exists());
+ QVERIFY(qrcFile.open(QFile::ReadOnly));
+ QByteArray qrcXml = qrcFile.readAll();
+ QVERIFY(qrcXml.contains("alias=\"file.txt\""));
+ }
+
+ {
+ QFile qrcFile(workDir + "/.rcc/" DIR_INFIX "qmake_qmake_immediate.qrc");
+ QVERIFY(qrcFile.exists());
+ QVERIFY(qrcFile.open(QFile::ReadOnly));
+ QByteArray qrcXml = qrcFile.readAll();
+ QVERIFY(qrcXml.contains("alias=\"main.cpp\""));
+ }
+
+ QVERIFY(test_compiler.make(workDir));
}
QTEST_MAIN(tst_qmake)