aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@qt.io>2017-10-26 11:10:52 +0200
committerJoerg Bornemann <joerg.bornemann@qt.io>2017-11-06 09:53:40 +0000
commit4d4cb193e40ff0dd55b2a201ab4fc783dabe1214 (patch)
tree2429ecaad38c6bfca0ffb0dc920730e9f588cf17 /tests
parent1fbdea32bf9b1251e006434680f0e9da8117ca93 (diff)
Yield error if Rule.outputArtifacts has invalid elements
Check for validity of filePath and fileTags in Rule.outputArtifacts. Change-Id: Id153695e8788732a40e6e5acb21a6d8b7f07f6e7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/main.cpp1
-rw-r--r--tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/outputArtifacts-missing-filePath.qbs18
-rw-r--r--tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/main.cpp1
-rw-r--r--tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/outputArtifacts-missing-fileTags.qbs18
-rw-r--r--tests/auto/blackbox/testdata/output-artifact-auto-tagging/output-artifact-auto-tagging.qbs4
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp7
6 files changed, 49 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/main.cpp b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/main.cpp
new file mode 100644
index 000000000..76e819701
--- /dev/null
+++ b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/main.cpp
@@ -0,0 +1 @@
+int main() { return 0; }
diff --git a/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/outputArtifacts-missing-filePath.qbs b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/outputArtifacts-missing-filePath.qbs
new file mode 100644
index 000000000..7a6c3a25d
--- /dev/null
+++ b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-filePath/outputArtifacts-missing-filePath.qbs
@@ -0,0 +1,18 @@
+import qbs 1.0
+
+CppApplication {
+ type: base.concat("txt")
+ files : ["main.cpp"]
+ Rule {
+ inputs: ["application"]
+ outputArtifacts: [{
+ fileTags: ["txt"]
+ }]
+ outputFileTags: ["txt"]
+ prepare: {
+ var cmd = new JavaScriptCommand();
+ cmd.silent = true;
+ return cmd;
+ }
+ }
+}
diff --git a/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/main.cpp b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/main.cpp
new file mode 100644
index 000000000..76e819701
--- /dev/null
+++ b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/main.cpp
@@ -0,0 +1 @@
+int main() { return 0; }
diff --git a/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/outputArtifacts-missing-fileTags.qbs b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/outputArtifacts-missing-fileTags.qbs
new file mode 100644
index 000000000..9b71cf73a
--- /dev/null
+++ b/tests/auto/blackbox/testdata/erroneous/outputArtifacts-missing-fileTags/outputArtifacts-missing-fileTags.qbs
@@ -0,0 +1,18 @@
+import qbs 1.0
+
+CppApplication {
+ type: base.concat("txt")
+ files : ["main.cpp"]
+ Rule {
+ inputs: ["application"]
+ outputArtifacts: [{
+ filePath: input.completeBaseName + ".txt"
+ }]
+ outputFileTags: ["txt"]
+ prepare: {
+ var cmd = new JavaScriptCommand();
+ cmd.silent = true;
+ return cmd;
+ }
+ }
+}
diff --git a/tests/auto/blackbox/testdata/output-artifact-auto-tagging/output-artifact-auto-tagging.qbs b/tests/auto/blackbox/testdata/output-artifact-auto-tagging/output-artifact-auto-tagging.qbs
index 49a732e23..a9090f3db 100644
--- a/tests/auto/blackbox/testdata/output-artifact-auto-tagging/output-artifact-auto-tagging.qbs
+++ b/tests/auto/blackbox/testdata/output-artifact-auto-tagging/output-artifact-auto-tagging.qbs
@@ -24,4 +24,8 @@ CppApplication {
return [cmd];
}
}
+ FileTagger {
+ patterns: ["*.nomatch"]
+ fileTags: ["utter nonsense"]
+ }
}
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp
index 8869e2619..3b123f779 100644
--- a/tests/auto/blackbox/tst_blackbox.cpp
+++ b/tests/auto/blackbox/tst_blackbox.cpp
@@ -2889,6 +2889,13 @@ void TestBlackbox::erroneousFiles_data()
QTest::addColumn<QString>("errorMessage");
QTest::newRow("nonexistentWorkingDir")
<< "The working directory '.does.not.exist' for process '.*ls.*' is invalid.";
+ QTest::newRow("outputArtifacts-missing-filePath")
+ << "Error in Rule\\.outputArtifacts\\[0\\]\n\r?"
+ "Property filePath must be a non-empty string\\.";
+ QTest::newRow("outputArtifacts-missing-fileTags")
+ << "Error in Rule\\.outputArtifacts\\[0\\]\n\r?"
+ "Property fileTags for artifact 'outputArtifacts-missing-fileTags\\.txt' "
+ "must be a non-empty string list\\.";
}
void TestBlackbox::erroneousFiles()