mirror of
https://github.com/servo/servo.git
synced 2025-07-04 14:03:39 +01:00
163 lines
No EOL
6.6 KiB
HTML
163 lines
No EOL
6.6 KiB
HTML
<!DOCTYPE html>
|
|
<html><head><meta charset="utf-8">
|
|
<title>CSSOM automated IDL tests</title>
|
|
<link href="mailto:Ms2ger@gmail.com" rel="author" title="Ms2ger">
|
|
<link href="https://drafts.csswg.org/cssom-1/#idl-index" rel="help">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/resources/WebIDLParser.js"></script>
|
|
<script src="/resources/idlharness.js"></script>
|
|
<style id="styleElement">
|
|
#test { color: green; }
|
|
</style>
|
|
</head><body><div id="log"></div>
|
|
<script type="text/plain" id="untested_idl">
|
|
interface EventTarget {};
|
|
interface Node : EventTarget {};
|
|
interface Document : Node {};
|
|
interface ProcessingInstruction : Node {};
|
|
interface Element : Node {};
|
|
interface HTMLElement : Element {};
|
|
interface SVGElement : Element {};
|
|
[PrimaryGlobal] interface Window {};
|
|
</script>
|
|
<script type="text/plain" id="idl">
|
|
[ArrayClass]interface MediaList {
|
|
[TreatNullAs=EmptyString] stringifier attribute DOMString mediaText;
|
|
readonly attribute unsigned long length;
|
|
getter DOMString? item(unsigned long index);
|
|
void appendMedium(DOMString medium);
|
|
void deleteMedium(DOMString medium);
|
|
};
|
|
interface StyleSheet {
|
|
readonly attribute DOMString type;
|
|
readonly attribute DOMString? href;
|
|
readonly attribute (Element or ProcessingInstruction)? ownerNode;
|
|
readonly attribute StyleSheet? parentStyleSheet;
|
|
readonly attribute DOMString? title;
|
|
[SameObject, PutForwards=mediaText] readonly attribute MediaList media;
|
|
attribute boolean disabled;
|
|
};
|
|
|
|
interface CSSStyleSheet : StyleSheet {
|
|
readonly attribute CSSRule? ownerRule;
|
|
[SameObject] readonly attribute CSSRuleList cssRules;
|
|
unsigned long insertRule(DOMString rule, unsigned long index);
|
|
void deleteRule(unsigned long index);
|
|
};
|
|
|
|
[ArrayClass]interface StyleSheetList {
|
|
getter StyleSheet? item(unsigned long index);
|
|
readonly attribute unsigned long length;
|
|
};
|
|
partial interface Document { [SameObject] readonly attribute StyleSheetList styleSheets;
|
|
attribute DOMString? selectedStyleSheetSet;
|
|
readonly attribute DOMString? lastStyleSheetSet;
|
|
readonly attribute DOMString? preferredStyleSheetSet;
|
|
readonly attribute DOMString[] styleSheetSets;
|
|
void enableStyleSheetsForSet(DOMString? name);
|
|
};
|
|
[NoInterfaceObject]interface LinkStyle {
|
|
readonly attribute StyleSheet? sheet;
|
|
};
|
|
ProcessingInstruction implements LinkStyle;
|
|
[ArrayClass]interface CSSRuleList {
|
|
getter CSSRule? item(unsigned long index);
|
|
readonly attribute unsigned long length;
|
|
};
|
|
interface CSSRule { const unsigned short STYLE_RULE = 1;
|
|
const unsigned short CHARSET_RULE = 2; // historical
|
|
const unsigned short IMPORT_RULE = 3;
|
|
const unsigned short MEDIA_RULE = 4;
|
|
const unsigned short FONT_FACE_RULE = 5;
|
|
const unsigned short PAGE_RULE = 6;
|
|
const unsigned short MARGIN_RULE = 9;
|
|
const unsigned short NAMESPACE_RULE = 10;
|
|
readonly attribute unsigned short type;
|
|
attribute DOMString cssText;
|
|
readonly attribute CSSRule? parentRule;
|
|
readonly attribute CSSStyleSheet? parentStyleSheet;
|
|
};
|
|
interface CSSStyleRule : CSSRule { attribute DOMString selectorText;
|
|
[SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
|
|
};
|
|
interface CSSImportRule : CSSRule { readonly attribute DOMString href;
|
|
[SameObject, PutForwards=mediaText] readonly attribute MediaList media;
|
|
[SameObject] readonly attribute CSSStyleSheet styleSheet;
|
|
};
|
|
interface CSSGroupingRule : CSSRule { [SameObject] readonly attribute CSSRuleList cssRules;
|
|
unsigned long insertRule(DOMString rule, unsigned long index);
|
|
void deleteRule(unsigned long index);
|
|
};
|
|
interface CSSMediaRule : CSSGroupingRule { [SameObject, PutForwards=mediaText] readonly attribute MediaList media;
|
|
};
|
|
interface CSSPageRule : CSSGroupingRule { attribute DOMString selectorText;
|
|
[SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
|
|
};
|
|
interface CSSMarginRule : CSSRule { readonly attribute DOMString name;
|
|
[SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
|
|
};
|
|
interface CSSNamespaceRule : CSSRule { readonly attribute DOMString namespaceURI;
|
|
readonly attribute DOMString prefix;
|
|
};
|
|
interface CSSStyleDeclaration { attribute DOMString cssText;
|
|
readonly attribute unsigned long length;
|
|
getter DOMString item(unsigned long index);
|
|
DOMString getPropertyValue(DOMString property);
|
|
DOMString getPropertyPriority(DOMString property);
|
|
void setProperty(DOMString property, [TreatNullAs=EmptyString] DOMString value, [TreatNullAs=EmptyString] optional DOMString priority = "");
|
|
void setPropertyValue(DOMString property, [TreatNullAs=EmptyString] DOMString value);
|
|
void setPropertyPriority(DOMString property, [TreatNullAs=EmptyString] DOMString priority);
|
|
DOMString removeProperty(DOMString property);
|
|
readonly attribute CSSRule? parentRule;
|
|
[TreatNullAs=EmptyString] attribute DOMString cssFloat;
|
|
};
|
|
partial interface CSSStyleDeclaration { [TreatNullAs=EmptyString] attribute DOMString _camel_cased_attribute;
|
|
};
|
|
partial interface CSSStyleDeclaration { [TreatNullAs=EmptyString] attribute DOMString _dashed_attribute;
|
|
};
|
|
[NoInterfaceObject]interface ElementCSSInlineStyle {
|
|
[SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
|
|
};
|
|
HTMLElement implements ElementCSSInlineStyle;
|
|
SVGElement implements ElementCSSInlineStyle;
|
|
partial interface Window { [NewObject] CSSStyleDeclaration getComputedStyle(Element elt, optional DOMString? pseudoElt);
|
|
};
|
|
[NoInterfaceObject]interface GetStyleUtils {
|
|
[SameObject] readonly attribute CSSStyleDeclaration cascadedStyle;
|
|
[SameObject] readonly attribute CSSStyleDeclaration defaultStyle;
|
|
[SameObject] readonly attribute CSSStyleDeclaration rawComputedStyle;
|
|
[SameObject] readonly attribute CSSStyleDeclaration usedStyle;
|
|
};
|
|
partial interface Element { PseudoElement? pseudo(DOMString pseudoElt);
|
|
};
|
|
|
|
Element implements GetStyleUtils;
|
|
interface PseudoElement {
|
|
};
|
|
|
|
PseudoElement implements GetStyleUtils;
|
|
interface CSS { static DOMString escape(DOMString ident);
|
|
};
|
|
</script>
|
|
<script>
|
|
var idl_array, style_element;
|
|
setup(function() {
|
|
idl_array = new IdlArray();
|
|
var idls = document.getElementById("idl").textContent;
|
|
var untested_idls = document.getElementById("untested_idl").textContent;
|
|
idl_array.add_untested_idls(untested_idls);
|
|
idl_array.add_idls(idls);
|
|
|
|
style_element = document.getElementById('styleElement');
|
|
idl_array.add_objects({
|
|
"Document": ["document", "new Document()"],
|
|
"StyleSheetList": ["document.styleSheets"],
|
|
"CSSStyleSheet": ["style_element.sheet"],
|
|
"CSSRuleList": ["style_element.sheet.cssRules"],
|
|
"CSSStyleRule": ["style_element.sheet.cssRules[0]"],
|
|
});
|
|
});
|
|
idl_array.test();
|
|
</script>
|
|
</body></html> |