diff options
author | Adrian Kummerländer | 2014-05-16 22:25:39 +0200 |
---|---|---|
committer | Adrian Kummerländer | 2014-05-16 22:25:39 +0200 |
commit | 7bd543e220c806177d805a8f4fbc13e951fe5788 (patch) | |
tree | 0fe8746d3ae922340a8fed56db7e112cd63dc811 /test | |
parent | ec6abad74348e9b577e1dd63b41d65263bb0334a (diff) | |
download | InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar.gz InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar.bz2 InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar.lz InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar.xz InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.tar.zst InputXSLT-7bd543e220c806177d805a8f4fbc13e951fe5788.zip |
Added XObjectPtr parameter to FunctionTransform
* the given XObject is passed to the called transformation
** this was done to enable templates to pass information to each other
** this should support any type usable in a XPath context to be passed as an argument
* expanded FunctionTransform test case accordingly
Diffstat (limited to 'test')
-rw-r--r-- | test/transform/reference.xml | 19 | ||||
-rw-r--r-- | test/transform/test.xsl | 12 | ||||
-rw-r--r-- | test/transform/transformation.xsl | 12 |
3 files changed, 34 insertions, 9 deletions
diff --git a/test/transform/reference.xml b/test/transform/reference.xml index 37c060e..d3675bc 100644 --- a/test/transform/reference.xml +++ b/test/transform/reference.xml @@ -1,11 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <test_case> -<transform><?xml version="1.0" encoding="UTF-8"?> +<transform> +<transform_test> +<argument_value>42</argument_value> +<transformation_content><?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:xalan="http://xml.apache.org/xalan" xmlns:InputXSLT="function.inputxslt.application" - exclude-result-prefixes="InputXSLT" + exclude-result-prefixes="InputXSLT xalan" > <xsl:output @@ -18,12 +22,17 @@ <xsl:template match="/"> <test_case> <transform> + <xsl:variable name="argument"> + <key>test</key> + <value>42</value> + </xsl:variable> + <xsl:variable name = "result" - select = "InputXSLT:transform('test.xsl', 'test_actual.xml')" + select = "InputXSLT:transform('test.xsl', 'test_actual.xml', $argument)" /> - <xsl:value-of select=" + <xsl:copy-of select=" InputXSLT:read-xml-file('test_actual.xml')/test_case/transform_test "/> </transform> @@ -31,5 +40,7 @@ </xsl:template> </xsl:stylesheet> +</transformation_content> +</transform_test> </transform> </test_case> diff --git a/test/transform/test.xsl b/test/transform/test.xsl index 40134c4..677e80d 100644 --- a/test/transform/test.xsl +++ b/test/transform/test.xsl @@ -2,8 +2,9 @@ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:xalan="http://xml.apache.org/xalan" xmlns:InputXSLT="function.inputxslt.application" - exclude-result-prefixes="InputXSLT" + exclude-result-prefixes="InputXSLT xalan" > <xsl:output @@ -13,10 +14,17 @@ indent="yes" /> +<xsl:param name="arguments"/> + <xsl:template match="/"> <test_case> <transform_test> - <xsl:value-of select="InputXSLT:read-file('transformation.xsl')"/> + <argument_value> + <xsl:value-of select="xalan:nodeset($arguments)/value"/> + </argument_value> + <transformation_content> + <xsl:value-of select="InputXSLT:read-file('transformation.xsl')"/> + </transformation_content> </transform_test> </test_case> </xsl:template> diff --git a/test/transform/transformation.xsl b/test/transform/transformation.xsl index 9039642..7348fef 100644 --- a/test/transform/transformation.xsl +++ b/test/transform/transformation.xsl @@ -2,8 +2,9 @@ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:xalan="http://xml.apache.org/xalan" xmlns:InputXSLT="function.inputxslt.application" - exclude-result-prefixes="InputXSLT" + exclude-result-prefixes="InputXSLT xalan" > <xsl:output @@ -16,12 +17,17 @@ <xsl:template match="/"> <test_case> <transform> + <xsl:variable name="argument"> + <key>test</key> + <value>42</value> + </xsl:variable> + <xsl:variable name = "result" - select = "InputXSLT:transform('test.xsl', 'test_actual.xml')" + select = "InputXSLT:transform('test.xsl', 'test_actual.xml', $argument)" /> - <xsl:value-of select=" + <xsl:copy-of select=" InputXSLT:read-xml-file('test_actual.xml')/test_case/transform_test "/> </transform> |