Viewing file: dc_20000210.py (2.46 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#Example from David Carlisle to ??? on 10 Feb 2000, with well-formedness corrections #With a few added variations for more testing
from Xml.Xslt import test_harness
sheet_1 = """<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:template match="/a"> <foo><xsl:value-of select="translate(.,' ','')"/></foo> </xsl:template>
</xsl:stylesheet>"""
source_1="""<?xml version="1.0"?> <a> 1 2 3 4 5 6 </a>"""
expected_1 = """<?xml version='1.0' encoding='UTF-8'?> <foo>123456</foo>"""
#Note: this one is tricky. We have the default namespace in exclude-result #So it shouldn't appear, right? Wrong. The literal result element output #by the template is actually in the http://duncan.com ns by virtue of default #So it must be declared as such in the output.
sheet_2 = """<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:boo="http://banquo.com" xmlns="http://duncan.com" exclude-result-prefixes='#default boo' version="1.0" >
<xsl:template match="/boo:a"> <foo><xsl:value-of select="translate(.,' ','')"/></foo> </xsl:template>
</xsl:stylesheet>"""
source_2 = """<?xml version="1.0"?> <boo:a xmlns:boo="http://banquo.com"> 1 2 3 4 5 6 </boo:a>"""
expected_2 = """<?xml version='1.0' encoding='UTF-8'?> <foo xmlns='http://duncan.com'>123456</foo>"""
sheet_3 = """<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:boo="http://banquo.com" xmlns="http://duncan.com" version="1.0" >
<xsl:template match="/boo:a"> <foo><xsl:value-of select="translate(.,' ','')"/></foo> </xsl:template>
</xsl:stylesheet>"""
source_3 = """<?xml version="1.0"?> <boo:a xmlns:boo="http://banquo.com"> 1 2 3 4 5 6 </boo:a>"""
expected_3 = """<?xml version='1.0' encoding='UTF-8'?> <foo xmlns:boo='http://banquo.com' xmlns='http://duncan.com'>123456</foo>"""
def Test(tester): source = test_harness.FileInfo(string=source_1) sheet = test_harness.FileInfo(string=sheet_1) test_harness.XsltTest(tester, source, [sheet], expected_1, title='test 1')
source = test_harness.FileInfo(string=source_2) sheet = test_harness.FileInfo(string=sheet_2) test_harness.XsltTest(tester, source, [sheet], expected_2, title='test 2')
source = test_harness.FileInfo(string=source_3) sheet = test_harness.FileInfo(string=sheet_3) test_harness.XsltTest(tester, source, [sheet], expected_3, title='test 3') return
|