| <!doctype html> |
| <meta charset=utf-8> |
| <!-- WARNING: These tests are preliminary and probably partly incorrect. --> |
| <title>CSSOM View automated IDL tests</title> |
| <link rel="author" title="Ms2ger" href="mailto:Ms2ger@gmail.com"> |
| <link rel="help" href="https://drafts.csswg.org/cssom-view-1/#idl-index"> |
| <script src=/resources/testharness.js></script> |
| <script src=/resources/testharnessreport.js></script> |
| <script src=/resources/WebIDLParser.js></script> |
| <script src=/resources/idlharness.js></script> |
| |
| <input id="caretPositionInput" style="position: absolute; top: 0; left: 0; border: 0;"> |
| |
| <h1>CSSOM View IDL tests</h1> |
| <div id=log></div> |
| |
| <script> |
| "use strict"; |
| |
| function doTest([html, dom, uievents, cssom, cssom_view]) { |
| |
| var idlArray = new IdlArray(); |
| var svg = "interface SVGElement : Element {};"; |
| idlArray.add_untested_idls(html + dom + svg + cssom); |
| idlArray.add_untested_idls(uievents, { only: [ |
| 'UIEvent', |
| 'UIEventInit', |
| 'MouseEvent', |
| 'MouseEventInit', |
| 'EventModifierInit'] |
| }); |
| idlArray.add_idls(cssom_view); |
| |
| idlArray.add_objects({ |
| "Window": ["window"], |
| "MediaQueryList": ["matchMedia('all')"], |
| "MediaQueryListEvent": ["new MediaQueryListEvent('change')"], |
| "Screen": ["screen"], |
| "Document": ["document"], |
| "CaretPosition": ["document.caretPositionFromPoint(5, 5)"], |
| "Element": ["document.createElementNS('x', 'y')"], |
| "HTMLElement": ["document.createElement('div')"], |
| "HTMLImageElement": ["document.createElement('img')"], |
| "Range": ["new Range()"], |
| // "MouseEvent": ["new MouseEvent('foo')"], |
| "Text": ["document.createTextNode('x')"], |
| // "CSSPseudoElement": [], |
| }); |
| idlArray.test(); |
| }; |
| |
| function fetchData(url) { |
| return fetch(url).then((response) => response.text()); |
| } |
| |
| function waitForLoad() { |
| return new Promise(function(resolve) { |
| addEventListener("load", resolve); |
| }); |
| } |
| |
| promise_test(function() { |
| // Have to wait for onload |
| return Promise.all([fetchData("/interfaces/html.idl"), |
| fetchData("/interfaces/dom.idl"), |
| fetchData("/interfaces/uievents.idl"), |
| fetchData("/interfaces/cssom.idl"), |
| fetchData("/interfaces/cssom-view.idl"), |
| waitForLoad()]) |
| .then(doTest); |
| }, "Test driver"); |
| |
| </script> |