You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by pa...@apache.org on 2001/08/02 21:42:57 UTC
cvs commit: xml-xalan/test/tests/capi/extensions cextension02.xsl cextension02.xml cextension01.xsl cextension01.xml
pauldick 01/08/02 12:42:57
Added: test/tests/capi/extensions cextension02.xsl cextension02.xml
cextension01.xsl cextension01.xml
Log:
Test cases for extensions
Revision Changes Path
1.1 xml-xalan/test/tests/capi/extensions/cextension02.xsl
Index: cextension02.xsl
===================================================================
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:xalan="http://xml.apache.org/xalan">
<!-- FileName: extend16 -->
<!-- Document: http://www.w3.org/TR/xslt -->
<!-- DocVersion: 19991116 -->
<!-- Section: 14 Extensions -->
<!-- Purpose: Testing Lotus-specific extensions. -->
<xsl:variable name="ns0" select="/lists/*/*"/>
<xsl:variable name="ns3" select="/lists/list3/*"/>
<xsl:variable name="ns4" select="/lists/*/item"/>
<xsl:variable name="ns5" select="/lists/list5/item"/>
<xsl:variable name="ns6" select="/lists/*"/>
<xsl:template match="/">
<out>
***** DATA *****
ns0: /lists/*/*
<xsl:for-each select="$ns0">
<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
</xsl:for-each>
ns3: /lists/list3/*
<xsl:for-each select="$ns3">
<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
</xsl:for-each>
ns4: /lists/*/item
<xsl:for-each select="$ns4">
<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
</xsl:for-each>
ns5: /lists/list5/item
<xsl:for-each select="$ns5">
<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
</xsl:for-each>
ns6: /lists/*
<xsl:for-each select="$ns6">
<xsl:copy/>
</xsl:for-each>
***** TESTS *****
Intersection - ns0, ns3:
<xsl:for-each select="xalan:intersection(lists/*/*, lists/list3/*)">
<xsl:value-of select="."/>
<xsl:if test="position() != last()">
<xsl:text>,</xsl:text>
</xsl:if>
<xsl:if test="position() = last()">
<xsl:text>: </xsl:text>
</xsl:if>
</xsl:for-each>
<xsl:copy-of select="xalan:intersection($ns3, $ns0)"/>
Difference - ns6, ns5:
<xsl:for-each select="xalan:difference(lists/*, lists/list5/item)">
<xsl:value-of select="name(.)"/>
<xsl:if test="position() != last()">
<xsl:text>,</xsl:text>
</xsl:if>
<xsl:if test="position() = last()">
<xsl:text>: </xsl:text>
</xsl:if>
</xsl:for-each>
Difference - ns5, ns6:
<xsl:for-each select="xalan:difference($ns5, $ns6 )">
<xsl:value-of select="."/>
<xsl:if test="position() != last()">
<xsl:text>,</xsl:text>
</xsl:if>
<xsl:if test="position() = last()">
<xsl:text>: </xsl:text>
</xsl:if>
</xsl:for-each>
<xsl:copy-of select="xalan:difference($ns5, $ns6 )"/>
Values of $ns4:
<xsl:for-each select="$ns4">
<xsl:value-of select="."/>
</xsl:for-each>
Distinct - ns4:
<xsl:for-each select="xalan:distinct($ns4)">
<xsl:value-of select="."/>
</xsl:for-each>
hasSameNodes - $ns0, lists/*/*:
<xsl:if test="xalan:hasSameNodes($ns0, lists/*/*)">
<WHOA_It_is_True/>
</xsl:if>
evaluate - lists//*/@* ...
<xsl:value-of select="xalan:evaluate('lists//*/@*')"/>
<xsl:value-of select="xalan:evaluate('lists//*/@a2')"/>
<xsl:value-of select="xalan:evaluate('lists/list3/*/@a2')"/>
<xsl:value-of select="xalan:evaluate('//list3//@a1')"/><xsl:text> </xsl:text>
<xsl:value-of select="xalan:evaluate('//list2//@a1 and //list3//@a2')"/>
</out>
</xsl:template>
<xsl:template match="text()"/>
</xsl:stylesheet>
1.1 xml-xalan/test/tests/capi/extensions/cextension02.xml
Index: cextension02.xml
===================================================================
<lists>
<list>
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
</list>
<list1>
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
</list1>
<list2>
<item>A</item>
<item a1="B" a2="b">B</item>
<item>C</item>
</list2>
<list3>
<item>X</item>
<item a1="Y" a2="y">Y</item>
<item>Z</item>
</list3>
<list4>
<item>X</item>
<item>Y</item>
<item>Z</item>
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
<item>X</item>
<item>Y</item>
<item>Z</item>
</list4>
<list5>
<item>X</item>
<item>Y</item>
<item>Z</item>
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
</list5>
</lists>
1.1 xml-xalan/test/tests/capi/extensions/cextension01.xsl
Index: cextension01.xsl
===================================================================
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:cextend="http://xml.apache.org/xslt"
xmlns:test="http://www.cnn.com"
xmlns:default="http://www.hello.com"
exclude-result-prefixes="test default cextend">
<!-- FileName: extend14 -->
<!-- Document: http://www.w3.org/TR/xslt -->
<!-- DocVersion: 19991116 -->
<!-- Section: 14 Extensions -->
<!-- Purpose: Testing Lotus-specific extension "Nodeset". -->
<xsl:strip-space elements="*"/>
<xsl:output indent="yes"/>
<xsl:template match="/">
<out>
<xsl:variable name="rtf">
<docelem xmlns="http://www.hello.com" xmlns:test="http://www.cnn.com">
<elem1>
<elem1a>ELEMENT1A</elem1a>
<elem1b>,ELEMENT1B</elem1b>
</elem1>
<elem2>
<elem2a>ELEMENT2A</elem2a>
<elem2b/>
</elem2>
<elem3>1</elem3>
<elem3>2</elem3>
<test:elem3>3</test:elem3>
<elem3>4</elem3>
<elem3>5</elem3>
<elem4>Yahoo</elem4>
</docelem>
</xsl:variable>
<xsl:value-of select="cextend:nodeset($rtf)/default:docelem/default:elem1"/><xsl:text> </xsl:text>
<xsl:for-each select="cextend:nodeset($rtf)/default:docelem/*">
<xsl:value-of select="name(.)"/><xsl:text>,</xsl:text>
</xsl:for-each><xsl:text> </xsl:text>
<xsl:for-each select="cextend:nodeset($rtf)/default:docelem/default:elem2/*">
<xsl:value-of select="name(.)"/><xsl:text>,</xsl:text>
</xsl:for-each><xsl:text> </xsl:text>
<xsl:text>Apply-templates match=elem4: </xsl:text>
<xsl:apply-templates select="cextend:nodeset($rtf)/default:docelem/default:elem4"/>
<xsl:text>Sum: </xsl:text>
<xsl:value-of select="sum(cextend:nodeset($rtf)/default:docelem/default:elem3)"/><xsl:text> </xsl:text>
<xsl:text>Count: </xsl:text>
<xsl:value-of select="count(cextend:nodeset($rtf)/default:docelem/default:elem3)"/><xsl:text> </xsl:text>
<xsl:text>Number: </xsl:text>
<xsl:value-of select="number(cextend:nodeset($rtf)/default:docelem/default:elem3[2])"/><xsl:text> </xsl:text>
<xsl:text>Name: </xsl:text>
<xsl:value-of select="name(cextend:nodeset($rtf)/*)"/><xsl:text> </xsl:text>
<xsl:text>generate-id: </xsl:text>
<xsl:value-of select="generate-id(cextend:nodeset($rtf)/default:docelem/default:elem4)"/><xsl:text> </xsl:text>
<xsl:text>Local-name: </xsl:text>
<xsl:value-of select="local-name(cextend:nodeset($rtf)/*)"/><xsl:text> </xsl:text>
<xsl:text>Namespace-uri: </xsl:text>
<xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem)"/>,
<xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem/default:elem1)"/>,
<xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem/test:elem3)"/>: <xsl:value-of select="(cextend:nodeset($rtf)/default:docelem/test:elem3)"/>
<xsl:text> </xsl:text>
<xsl:text> </xsl:text>
<xsl:text>xsl:copy-of($rtf): </xsl:text>
<xsl:copy-of select="cextend:nodeset($rtf)/default:docelem"/><xsl:text> </xsl:text>
<xsl:text> </xsl:text>
<xsl:text>xsl:copy-of(elem1b): </xsl:text>
<xsl:copy-of select="cextend:nodeset($rtf)/default:docelem/default:elem1/default:elem1b"/><xsl:text> </xsl:text>
<xsl:text> </xsl:text>
<xsl:text>xsl:copy-of(test:elem3): </xsl:text>
<xsl:copy-of select="cextend:nodeset($rtf)/default:docelem/test:elem3"/><xsl:text> </xsl:text>
</out>
</xsl:template>
<xsl:template match="default:elem4">
<xsl:value-of select="."/>,
</xsl:template>
</xsl:stylesheet>
1.1 xml-xalan/test/tests/capi/extensions/cextension01.xml
Index: cextension01.xml
===================================================================
<?xml version="1.0"?>
<doc>
</doc>
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org