Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. <?xml version="1.0" standalone="no"?>
  2. <?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
  3. <!--
  4.  Copyright (c) 2003 X-Hive Corporation
  5.  
  6.  All Rights Reserved. This work is distributed under the W3C(r)
  7.  Software License [1] in the hope that it will be useful, but WITHOUT
  8.  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  9.  FITNESS FOR A PARTICULAR PURPOSE.
  10.  
  11.  [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
  12. -->
  13.  
  14.  
  15. <!DOCTYPE test SYSTEM "dom3.dtd" [
  16.   <!ENTITY % entities SYSTEM "dom3tests.ent">
  17.   %entities;
  18. ]>
  19.  
  20.  
  21. <test xmlns="&level3;" name="DOMWriterFilterTest0">
  22.   <metadata>
  23.     <title>DOMWriterFilterTest0</title>
  24.     &creator;
  25.     <description>DOMSerializerFilter test, a simple test eliminating a subtree</description>
  26.     &contributor; &date;
  27.     <subject resource="&spec;#LS-Interfaces-LSSerializerFilter"/>
  28.         <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-LSSerializerFilter"/>
  29.         <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-acceptNode"/>
  30.   </metadata>
  31.  
  32.  
  33.   <var name="myfilter" type="LSSerializerFilter">
  34.      <var name="name" type="DOMString"/>
  35.      &filterVars;
  36.  
  37.  
  38.      <acceptNode>
  39.  
  40.         <nodeName obj="n" var="name"/>
  41.         <if>
  42.           <equals actual="name" expected='"elt1"' ignoreCase="false"/>
  43.           <return value="&FILTER_ACCEPT;"/>
  44.         </if>
  45.  
  46.         <return value="&FILTER_REJECT;"/>
  47.      </acceptNode>
  48.  
  49.      <whatToShow>
  50.        <get>
  51.         <return value="&SHOW_ALL;"/>
  52.        </get>
  53.      </whatToShow>
  54.  
  55.   </var>
  56.  
  57.  
  58.  
  59.  
  60.   <var name="configuration"   type="DOMConfiguration"/>
  61.   <var name="stringDoc"       type="DOMString" value='"&lt;elt1&gt;first elt1&lt;elt2&gt;elt2&lt;/elt2&gt;&lt;/elt1&gt;"'/>
  62.   <var name="writeResult"     type="DOMString"/>
  63.   <var name="length"          type="int"/>
  64.   <var name="elementList"     type="NodeList"/>
  65.  
  66.   &vars;
  67.   &init;
  68.  
  69.   <!-- parse the string -->
  70.   <stringData obj="inputSource" value="stringDoc"/>
  71.   <parse  var="document" obj="parser" input="inputSource"/>
  72.  
  73.   <!-- apply the filter -->
  74.   <filter obj="writer" value="myfilter" interface="LSSerializer"/>
  75.  
  76.   <!-- serialize result -->
  77.   <writeToString var="writeResult" obj="writer" nodeArg="document"/>
  78.  
  79.   <!-- parse result -->
  80.   <stringData obj="inputSource" value="writeResult" interface="LSInput"/>
  81.   <parse  var="document" obj="parser" input="inputSource"/>
  82.  
  83.   <!-- tests elt1 should be in the result, elt2 should be filtered out -->
  84.   <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
  85.   <assertSize collection="elementList" size="0" id="count_elt2"/>
  86.  
  87.   <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
  88.   <assertSize collection="elementList" size="1" id="count_elt1"/>
  89.  
  90.  
  91. </test>
  92.  
  93.  
  94.  
  95.  
  96.