need help, level 3 test
"Jeroen van Rotterdam" <[email protected]>
| Newsgroups | gmane.comp.web.dom.test-suites.general |
|---|---|
| Message-ID | <[email protected]> |
Attached is a filter test which generated test1.java if you leave out the <whatToShow...> element. Can someone have a look at this and tell me how you would have to specify <whatToShow> in this case (I've been staring on it a while now) ? I'd also like to know how you can refer to constants defined in other interfaces,e.g. NodeFilter.SHOW_ELEMENT. Thanks in advance, Jeroen ===== X-Hive Corporation Jeroen van Rotterdam, CEO e-mail: [email protected] phone: +31 10 7108600 http://www.x-hive.com
test1.xml
(text/xml, 1.3 KB)
<?xml version="1.0" standalone="no"?>
<!DOCTYPE test [
<!ENTITY % entities SYSTEM "dom3tests.ent">
%entities;
]>
<test xmlns="&level3;" name="builderfilter">
<metadata>
<title>attrSpecifiedValue</title>
&creator;
<description>DOM Builder Filter test</description>
&contributor; &date;
<subject spec="&spec;#LS-Interfaces-DOMBuilderFilter"/>
</metadata>
&vars;
<var name="myfilter" type="DOMBuilderFilter">
<var name='show_element' type='long' value='SHOW_ELEMENT'/>
<var name='filter_reject' type='short' value='FILTER_REJECT'/>
<var name='filter_accept' type='short' value='FILTER_ACCEPT'/>
<var name="name" type="String"/>
<startElement elt="element">
<nodeName var="name" obj="element"/>
<if>
<equals actual="name" expected=""elt2"" ignoreCase="false"/>
<return value="filter_reject"/>
<else>
<return value="filter_accept"/>
</else>
</if>
</startElement>
<acceptNode/>
<whatToShow obj="xxx" var="show_element" interface="DOMBuilderFilter"/>
</var>
&init;
&builder.setFilter_myfilter;
<parseURI var="document" obj="builder" uri="testfile1"/>
</test>
dom3tests.ent
(text/xml, 1.5 KB)
<!ENTITY level3 "http://www.w3.org/2001/DOM-Test-Suite/Level-3">
<!ENTITY spec "http://www.w3.org/TR/DOM-Level-3-ASLS/load-save.html">
<!ENTITY date "<date qualifier='created'>2002-03-23</date>">
<!ENTITY contributor "<contributor>X-Hive Corporation</contributor>">
<!ENTITY creator "<creator>X-Hive Corporation</creator>">
<!ENTITY vars "<var name='implementation' type='DOMImplementation'/>
<var name='lsImplementation' type='DOMImplementationLS'/>
<var name='inputSource' type='DOMInputSource'/>
<var name='document' type='Document'/>
<var name='writer' type='DOMWriter'/>
<var name='builder' type='DOMBuilder'/>
<var name='testfile1' type='DOMString' value='"test1.xml"'/>
<var name='mode' type='short' value='MODE_SYNCHRONOUS'/>
<var name='schemaType' type='DOMString' value='null'/>">
<!ENTITY init "<createDOMBuilder var='builder' obj='lsImplementation' mode='mode' schemaType='schemaType'/>
<createDOMWriter var='writer' obj='lsImplementation'/>
<createDOMInputSource var='inputSource' obj='lsImplementation'/>">
<!ENTITY builder.setFilter_myfilter "<filter obj='builder' value='myfilter' interface='DOMBuilder'/>">
test1.java
(text/plain, 2.2 KB)
package org.w3c.domts.level3.ls;
import org.w3c.dom.*;
import org.w3c.dom.html.*;
import org.w3c.dom.events.*;
import org.w3c.dom.ls.*;
import org.w3c.domts.*;
import javax.xml.parsers.*;
import java.util.List;
import java.util.Collection;
import java.util.ArrayList;
/**
* DOM Builder Filter test
* @author X-Hive Corporation
* @author X-Hive Corporation
* @see <a href=""></a>
*/
public class builderfilter extends DOMTestCase {
public builderfilter(DOMTestDocumentBuilderFactory factory)
{
super(factory);
}
private class DOMBuilderFilterN43 implements DOMBuilderFilter {
long show_element;
short filter_reject;
short filter_accept;
String name;
public DOMBuilderFilterN43(long show_element, short filter_reject, short filter_accept) {
this.show_element = show_element;
this.filter_reject = filter_reject;
this.filter_accept = filter_accept;
}
public unsigned short startElement(Element elt) {
name = (String)((Node)/**/element).getNodeName();
if(
equals("elt2",name)
) {
return filter_reject;
}
else {
return filter_accept;
}
}
public unsigned short acceptNode(Node enode) {
}
}
public void runTest() throws java.lang.Throwable {
DOMImplementation implementation;
DOMImplementationLS lsImplementation;
DOMInputSource inputSource;
Document document;
DOMWriter writer;
DOMBuilder builder;
String testfile1 = "test1.xml";
short mode = MODE_SYNCHRONOUS;
String schemaType = null;
DOMBuilderFilter myfilter = new DOMBuilderFilterN43(SHOW_ELEMENT, FILTER_REJECT, FILTER_ACCEPT );
builder = lsImplementation.createDOMBuilder(((unsigned short)/*short*/mode),schemaType);
writer = lsImplementation.createDOMWriter();
inputSource = lsImplementation.createDOMInputSource();
builder.setFilter(/* undeclared */myfilter);
document = builder.parseURI(testfile1);
}
public String getTargetURI() {
return "http://www.w3.org/2001/DOM-Test-Suite/level3/ls/builderfilter";
}
public static void main(String[] args) {
DOMTestCase.doMain(builderfilter.class,args);
}
}