79 lines
2.6 KiB
HTML
79 lines
2.6 KiB
HTML
<!doctype html>
|
|
<meta charset=utf-8>
|
|
<!-- WARNING: These tests are preliminary and probably partly incorrect. -->
|
|
<title>CSSOM automated IDL tests</title>
|
|
<link rel="author" title="Ms2ger" href="mailto:Ms2ger@gmail.com">
|
|
<link rel="help" href="https://drafts.csswg.org/cssom-1/#idl-index">
|
|
<meta name="timeout" content="long">
|
|
<script src=/resources/testharness.js></script>
|
|
<script src=/resources/testharnessreport.js></script>
|
|
<script src=/resources/WebIDLParser.js></script>
|
|
<script src=/resources/idlharness.js></script>
|
|
<!--
|
|
Provide some objects to test.
|
|
Use a non-empty style attribute to get a non-empty CSSStyleDeclaration.
|
|
-->
|
|
<style id="styleElement" style="z-index: 0;">
|
|
@import url("data:text/css,");
|
|
@namespace x "y";
|
|
@page { @top-left {} }
|
|
@media all {}
|
|
#test { color: green; }
|
|
</style>
|
|
|
|
<svg id="svgElement" style="height: 0;"></svg>
|
|
|
|
<iframe id="xmlssPiIframe" src="support/xmlss-pi.xhtml" style="display: none;"></iframe>
|
|
|
|
<h1>CSSOM IDL tests</h1>
|
|
<div id=log></div>
|
|
|
|
<script>
|
|
'use strict';
|
|
|
|
const waitForLoad = new Promise(r => { addEventListener('load', r); });
|
|
|
|
idl_test(
|
|
['cssom'],
|
|
['SVG', 'uievents', 'html', 'dom', 'mathml-core'],
|
|
async idlArray => {
|
|
idlArray.add_objects({
|
|
Document: ['document', 'new Document()'],
|
|
StyleSheetList: ['document.styleSheets'],
|
|
CSSStyleSheet: ['sheet'],
|
|
MediaList: ['sheet.media'],
|
|
CSSRuleList: ['sheet.cssRules'],
|
|
CSSImportRule: ['sheet.cssRules[0]'],
|
|
CSSNamespaceRule: ['sheet.cssRules[1]'],
|
|
CSSPageRule: ['sheet.cssRules[2]'],
|
|
CSSMarginRule: ['sheet.cssRules[2].cssRules[0]'],
|
|
CSSMediaRule: ['sheet.cssRules[3]'],
|
|
CSSStyleRule: ['sheet.cssRules[4]'],
|
|
CSSStyleProperties: [
|
|
'sheet.cssRules[4].style', // CSSStyleRule
|
|
'sheet.cssRules[2].cssRules[0].style', // CSSMarginRule
|
|
'style_element.style', // ElementCSSInlineStyle for HTMLElement
|
|
'svg_element.style', // ElementCSSInlineStyle for SVGElement
|
|
'getComputedStyle(svg_element)'
|
|
],
|
|
CSSPageDescriptors: [
|
|
'sheet.cssRules[2].style', // CSSPageRule
|
|
],
|
|
ProcessingInstruction: ['xmlss_pi'],
|
|
Window: ['window'],
|
|
HTMLElement: [
|
|
'style_element',
|
|
'document.createElement("unknownelement")'
|
|
],
|
|
SVGElement: ['svg_element'],
|
|
});
|
|
|
|
await waitForLoad;
|
|
self.style_element = document.getElementById('styleElement');
|
|
self.sheet = style_element.sheet;
|
|
self.svg_element = document.getElementById('svgElement');
|
|
self.xmlss_pi = document.getElementById('xmlssPiIframe').contentDocument.firstChild;
|
|
}
|
|
);
|
|
|
|
</script>
|