OLD | NEW |
(Empty) | |
| 1 <!doctype html> |
| 2 <title>XPath tests</title> |
| 3 <script src='/resources/testharness.js'></script> |
| 4 <script src='/resources/testharnessreport.js'></script> |
| 5 <script src='/resources/WebIDLParser.js'></script> |
| 6 <script src='/resources/idlharness.js'></script> |
| 7 <script type='text/plain'> |
| 8 [Constructor] interface XPathEvaluator { |
| 9 [NewObject] XPathExpression createExpression(DOMString expression, |
| 10 optional XPathNSResolver? resolve
r); |
| 11 Node createNSResolver(Node nodeResolver); |
| 12 XPathResult evaluate(DOMString expression, Node contextNode, |
| 13 optional XPathNSResolver? resolver, |
| 14 optional unsigned short type, |
| 15 optional object? result); |
| 16 }; |
| 17 |
| 18 interface XPathExpression { |
| 19 XPathResult evaluate(Node contextNode, |
| 20 optional unsigned short type, |
| 21 optional object? result); |
| 22 }; |
| 23 |
| 24 callback interface XPathNSResolver { |
| 25 DOMString? lookupNamespaceURI(DOMString? prefix); |
| 26 }; |
| 27 |
| 28 interface XPathResult { |
| 29 const unsigned short ANY_TYPE = 0; |
| 30 const unsigned short NUMBER_TYPE = 1; |
| 31 const unsigned short STRING_TYPE = 2; |
| 32 const unsigned short BOOLEAN_TYPE = 3; |
| 33 const unsigned short UNORDERED_NODE_ITERATOR_TYPE = 4; |
| 34 const unsigned short ORDERED_NODE_ITERATOR_TYPE = 5; |
| 35 const unsigned short UNORDERED_NODE_SNAPSHOT_TYPE = 6; |
| 36 const unsigned short ORDERED_NODE_SNAPSHOT_TYPE = 7; |
| 37 const unsigned short ANY_UNORDERED_NODE_TYPE = 8; |
| 38 const unsigned short FIRST_ORDERED_NODE_TYPE = 9; |
| 39 readonly attribute unsigned short resultType; |
| 40 readonly attribute double numberValue; |
| 41 readonly attribute DOMString stringValue; |
| 42 readonly attribute boolean booleanValue; |
| 43 readonly attribute Node? singleNodeValue; |
| 44 readonly attribute boolean invalidIteratorState; |
| 45 readonly attribute unsigned long snapshotLength; |
| 46 Node? iterateNext(); |
| 47 Node? snapshotItem(unsigned long index); |
| 48 }; |
| 49 </script> |
| 50 <script type='text/plain' class='untested'> |
| 51 interface Document {}; |
| 52 Document implements XPathEvaluator; |
| 53 </script> |
| 54 <script> |
| 55 "use strict"; |
| 56 var evaluator = document; |
| 57 var resolver = function() {}; |
| 58 var resolver2 = document.createNSResolver(document.documentElement); |
| 59 var expression = document.createExpression("//*", resolver); |
| 60 var result = document.evaluate("//*", document.documentElement, resolver, 0, nul
l); |
| 61 |
| 62 var idlArray; |
| 63 setup(function() { |
| 64 idlArray = new IdlArray(); |
| 65 [].forEach.call(document.querySelectorAll("script[type=text\\/plain]"), functi
on(node) { |
| 66 if (node.className == "untested") { |
| 67 idlArray.add_untested_idls(node.textContent); |
| 68 } else { |
| 69 idlArray.add_idls(node.textContent); |
| 70 } |
| 71 }); |
| 72 idlArray.add_objects({ |
| 73 Document: ["document"], |
| 74 XPathExpression: ["expression"], |
| 75 XPathResolver: ["resolver", "resolver2"], |
| 76 XPathResult: ["result"] |
| 77 }); |
| 78 }); |
| 79 idlArray.test(); |
| 80 </script> |
OLD | NEW |