You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by dm...@locus.apache.org on 2000/12/15 20:29:56 UTC

cvs commit: xml-xalan/test/tests/conf/match/err test6.xml matcherr01.xsl matcherr02.xml matcherr02.xsl matcherr03.xml matcherr03.xsl matcherr04.xml matcherr04.xsl matcherr05.xml matcherr05.xsl matcherr06.xml matcherr06.xsl matcherr07.xml matcherr07.xsl matcherr08.xml matcherr08.xsl matcherr09.xml matcherr09.xsl matcherr01.xml

dmarston    00/12/15 11:29:56

  Added:       test/tests/conf/match/err test6.xml matcherr01.xsl
                        matcherr02.xml matcherr02.xsl matcherr03.xml
                        matcherr03.xsl matcherr04.xml matcherr04.xsl
                        matcherr05.xml matcherr05.xsl matcherr06.xml
                        matcherr06.xsl matcherr07.xml matcherr07.xsl
                        matcherr08.xml matcherr08.xsl matcherr09.xml
                        matcherr09.xsl matcherr01.xml
  Log:
  Copy of tests in Lotus/IBM repository
  
  Revision  Changes    Path
  1.1                  xml-xalan/test/tests/conf/match/err/test6.xml
  
  Index: test6.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <body/>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr01.xsl
  
  Index: matcherr01.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr01 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.3 -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Test for error when xsl:template has neither match nor name. -->
    <!-- ExpectedException: xsl:template requires either a name or a match attribute. -->
  
  <xsl:template match="letters">
    <out>
      <xsl:apply-templates/>
    </out>
  </xsl:template>
  
  <xsl:template>
    <xsl:value-of select="."/>
    <xsl:text> Huh? </xsl:text>
  </xsl:template>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr02.xml
  
  Index: matcherr02.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <letter>b</letter>
    <letter>h</letter>
  </letters>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr02.xsl
  
  Index: matcherr02.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr02 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.3 -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Try to use xsl:template as something other than a top-level element. -->
    <!-- ExpectedException: (StylesheetHandler) xsl:template is not allowed inside a template! -->
    <!-- ExpectedException: org.apache.xalan.xslt.XSLProcessorException: (StylesheetHandler) xsl:template is not allowed inside a template! -->
  
  <xsl:template match="letters">
    <out>
      <xsl:template>
        <xsl:value-of select="."/>
        <xsl:text> Huh? </xsl:text>
      </xsl:template>
    </out>
  </xsl:template>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr03.xml
  
  Index: matcherr03.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <letter>b</letter>
    <letter>h</letter>
  </letters>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr03.xsl
  
  Index: matcherr03.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: matcherr03 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.3 -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Test for error when xsl:template is nested in another top-level element. -->
    <!-- ExpectedException: org.apache.xalan.xslt.XSLProcessorException: (StylesheetHandler) xsl:template is not allowed inside a template! -->
    <!-- Author: David Marston -->
  
  <xsl:param name="bad">
    <xsl:template match="letters">
      <out>
        <xsl:apply-templates/>
      </out>
    </xsl:template>
  </xsl:param>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr04.xml
  
  Index: matcherr04.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
   <title>Test for source tree depth</title>
   <a>
    <title>Level A</title>
    <b>
     <title>Level B</title>
     <c>
      <title>Level C</title>
      <d>
       <title>Level D</title>
       <e>
        <title>Level E</title>
        <f>
         <title>Level F</title>
         <g>
          <title>Level G</title>
          <h>
           <title>Level H</title>
           <i>
            <title>Level I</title>
            <j>
             <title>Level J</title>
             <k>
              <title>Level K</title>
              <l>
               <title>Level L</title>
               <m>
                <title>Level M</title>
                <n>
                 <title>Level N</title>
                 <o>
                  <title>Level O</title>
                 </o>
                </n>
               </m>
              </l>
             </k>
            </j>
           </i>
          </h>
         </g>
        </f>
       </e>
      </d>
     </c>
    </b>
   </a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr04.xsl
  
  Index: matcherr04.xsl
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr04 -->
    <!-- Document: http://www.w3.org/TR/xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.4 -->
    <!-- Purpose: Put content other than sort or param inside apply-templates. -->
    <!-- Creator: David Marston -->
    <!-- ExpectedException: ElemTemplateElement error: Can not add #text to xsl:apply-templates -->
    <!-- ExpectedException: org.apache.xalan.xslt.XSLProcessorException: ElemTemplateElement error: Can not add #text to xsl:apply-templates -->
  
  <xsl:template match="doc">
    <out>
      <xsl:value-of select="title"/><xsl:text>
  </xsl:text>
      <xsl:apply-templates select="title">
        <xsl:sort select="."/>
        <xsl:text>This should not be inside apply-templates</xsl:text>
      </xsl:apply-templates>
    </out>
  </xsl:template>
  
  <xsl:template match="text()"><!-- To suppress empty lines --><xsl:apply-templates/></xsl:template>
  
  <xsl:template match="*[@title]">
    <xsl:text>Found a node
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="p">
    <xsl:text>Found a P node; there should not be one!
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr05.xml
  
  Index: matcherr05.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
   <title>Test for source tree depth</title>
   <a>
    <title>Level A</title>
    <b>
     <title>Level B</title>
     <c>
      <title>Level C</title>
      <d>
       <title>Level D</title>
       <e>
        <title>Level E</title>
        <f>
         <title>Level F</title>
         <g>
          <title>Level G</title>
          <h>
           <title>Level H</title>
           <i>
            <title>Level I</title>
            <j>
             <title>Level J</title>
             <k>
              <title>Level K</title>
              <l>
               <title>Level L</title>
               <m>
                <title>Level M</title>
                <n>
                 <title>Level N</title>
                 <o>
                  <title>Level O</title>
                 </o>
                </n>
               </m>
              </l>
             </k>
            </j>
           </i>
          </h>
         </g>
        </f>
       </e>
      </d>
     </c>
    </b>
   </a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr05.xsl
  
  Index: matcherr05.xsl
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr05 -->
    <!-- Document: http://www.w3.org/TR/xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.4 -->
    <!-- Purpose: Put a disallowed attribute on xsl:template. -->
    <!-- Creator: David Marston -->
    <!-- ExpectedException: XSL Error: xsl:template has an illegal attribute: level -->
  
  <xsl:template match="doc">
    <out>
      <xsl:value-of select="title"/><xsl:text>
  </xsl:text>
      <xsl:apply-templates select="title">
        <xsl:sort select="."/>
      </xsl:apply-templates>
    </out>
  </xsl:template>
  
  <xsl:template match="text()"><!-- To suppress empty lines --><xsl:apply-templates/></xsl:template>
  
  <xsl:template match="*[@title]" level="single">
    <xsl:text>Found a node
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="p">
    <xsl:text>Found a P node; there should not be one!
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr06.xml
  
  Index: matcherr06.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <defaultcontent>
      <section1/>
      <section2/>
    </defaultcontent>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr06.xsl
  
  Index: matcherr06.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr06 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 12.1 Multiple Source Documents -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Test document() function in a match pattern.
       The spec doesn't say whether it's allowed or not, but NOT seems likely. -->
    <!-- ExpectedException: Unknown nodetype: document -->
  
  <xsl:template match="defaultcontent">
    <out>
      <xsl:apply-templates/>
    </out>
  </xsl:template>
  
  <xsl:template match="document('test6.xml')//body">
    <xsl:value-of select="name(..)"/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr07.xml
  
  Index: matcherr07.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
   <title>Test for source tree depth</title>
   <a>
    <title>Level A</title>
    <b>
     <title>Level B</title>
     <c>
      <title>Level C</title>
      <d>
       <title>Level D</title>
       <e>
        <title>Level E</title>
        <f>
         <title>Level F</title>
         <g>
          <title>Level G</title>
          <h>
           <title>Level H</title>
           <i>
            <title>Level I</title>
            <j>
             <title>Level J</title>
             <k>
              <title>Level K</title>
              <l>
               <title>Level L</title>
               <m>
                <title>Level M</title>
                <n>
                 <title>Level N</title>
                 <o>
                  <title>Level O</title>
                 </o>
                </n>
               </m>
              </l>
             </k>
            </j>
           </i>
          </h>
         </g>
        </f>
       </e>
      </d>
     </c>
    </b>
   </a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr07.xsl
  
  Index: matcherr07.xsl
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr07 -->
    <!-- Document: http://www.w3.org/TR/xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.4 -->
    <!-- Purpose: Put a disallowed attribute on xsl:apply-templates. -->
    <!-- Creator: David Marston -->
    <!-- ExpectedException: XSL Error: xsl:apply-templates has an illegal attribute: name -->
  
  <xsl:template match="doc">
    <out>
      <xsl:value-of select="title"/><xsl:text>
  </xsl:text>
      <xsl:apply-templates select="title" name="tmplt1">
        <xsl:sort select="."/>
      </xsl:apply-templates>
    </out>
  </xsl:template>
  
  <xsl:template match="text()"><!-- To suppress empty lines --><xsl:apply-templates/></xsl:template>
  
  <xsl:template match="*[@title]">
    <xsl:text>Found a node
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="p">
    <xsl:text>Found a P node; there should not be one!
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr08.xml
  
  Index: matcherr08.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <letter>b</letter>
    <letter>h</letter>
  </letters>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr08.xsl
  
  Index: matcherr08.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr08 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.3 -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Test for error when xsl:template has neither match nor name, but has a mode. -->
    <!-- ExpectedException: XSL Error: xsl:template must have a match attribute if it has a mode. -->
  
  <xsl:template match="letters">
    <out>
      <xsl:apply-templates mode="broken"/>
    </out>
  </xsl:template>
  
  <xsl:template mode="broken">
    <xsl:value-of select="."/>
    <xsl:text> Huh? </xsl:text>
  </xsl:template>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr09.xml
  
  Index: matcherr09.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <letter>b</letter>
    <letter>h</letter>
  </letters>
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr09.xsl
  
  Index: matcherr09.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MATCHerr09 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.4 -->
    <!-- Purpose: Put xsl:apply-templates at top level, which is illegal. -->
    <!-- Creator: David Marston -->
    <!-- ExpectedException: (StylesheetHandler) xsl:apply-templates not allowed inside a stylesheet! -->
    <!-- ExpectedException: org.apache.xalan.xslt.XSLProcessorException: (StylesheetHandler) xsl:apply-templates not allowed inside a stylesheet! -->
  
  <xsl:apply-templates select="letters/letter"/>
  
  <xsl:template match="letter">
    <xsl:value-of select="."/>
    <xsl:text> This should fail</xsl:text>
  </xsl:template>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/match/err/matcherr01.xml
  
  Index: matcherr01.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <letter>b</letter>
    <letter>h</letter>
  </letters>