summaryrefslogtreecommitdiff
path: root/tests/functional/functional.pro
diff options
context:
space:
mode:
Diffstat (limited to 'tests/functional/functional.pro')
-rw-r--r--tests/functional/functional.pro55
1 files changed, 34 insertions, 21 deletions
diff --git a/tests/functional/functional.pro b/tests/functional/functional.pro
index 5a80ff1..9bbb9e4 100644
--- a/tests/functional/functional.pro
+++ b/tests/functional/functional.pro
@@ -1,26 +1,39 @@
-TEMPLATE=subdirs
-
-QMAKE_EXTRA_TARGETS += metadata initScript
-XMLLINT= xmllint --noout --schema /usr/share/test-definition/testdefinition-syntax.xsd --schema /usr/share/test-definition/testdefinition-tm_terms.xsd
-
+# Definitions
+TD=/usr/share/test-definition/testdefinition
SUITENAME=mcompositor-functional-tests
-scripts.path=/usr/share/meegotouch/testscripts/$$SUITENAME
-scripts.files += \
- test*.py \
-
-
-metadata.commands = ./createTestXml $${scripts.path} $${scripts.files};
-metadata.commands += $$XMLLINT tests.xml
-metadata.target=tests.xml
-
-metadata.path=/usr/share/$$SUITENAME
-
-metadata.files += tests.xml
-
-metadata.CONFIG += no_check_exist
+# Stupid qmake wants to link everything.
+QMAKE_LINK = @: IGNORE THIS LINE
+# The init script will be part of mcompositor-utils.
initScript.files = mcompositor-test-init.py
initScript.path = /usr/bin
-
-INSTALLS += metadata scripts initScript
+PRE_TARGETDEPS += $${initScript.files}
+INSTALLS += initScript
+
+# Install all test scripts.
+scripts.files += test*.py
+scripts.path = /usr/share/meegotouch/testscripts/$$SUITENAME
+INSTALLS += scripts
+
+# Simple and easy way to build tests.xml.
+metadata.target = tests.xml
+metadata.depends = $${scripts.files} setandsuite.testdata
+metadata.input = $${metadata.depends}
+metadata.output = $${metadata.target}
+metadata.commands = ./createTestXml $${scripts.path} $${metadata.input};
+metadata.commands += xmllint --noout --schema $$TD-syntax.xsd --schema $$TD-tm_terms.xsd $${metadata.output};
+QMAKE_EXTRA_COMPILERS += metadata
+QMAKE_EXTRA_TARGETS += metadata
+PRE_TARGETDEPS += $${metadata.output}
+
+# Make make clean work.
+clean.depends += compiler_metadata_clean
+QMAKE_EXTRA_TARGETS += clean
+
+# If we added metadata to INSTALLS it would regenerate tests.xml every
+# time you install.
+mdinst.depends = $${metadata.output}
+mdinst.files = $${metadata.output}
+mdinst.path = /usr/share/$$SUITENAME
+INSTALLS += mdinst