<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<style>
@media screen and (min-width: 480px) {
body { background-color: lightgreen; }
}
@media {
body { background-color: red; }
}
@supports (width: 0) {
s { width: 0; }
}
</style>
<p>Test for @media CSSOM <a href="http://crbug.com/651792">bug 651792</a>.</p>
<script>
test(function(){
assert_equals(Object.getPrototypeOf(CSSMediaRule.prototype), CSSConditionRule.prototype);
assert_equals(Object.getPrototypeOf(CSSSupportsRule.prototype), CSSConditionRule.prototype);
}, "CSSConditionRule protype chain.");
var rules = document.styleSheets[0].cssRules;
test(function(){
assert_equals(CSSRule.STYLE_RULE,1);
assert_equals(CSSRule.MEDIA_RULE,4);
assert_equals(rules.length, 3);
assert_equals(rules[0].type, 4);
assert_equals(rules[0].cssRules.length, 1);
assert_equals(rules[0].cssRules[0].type, 1);
assert_equals(rules[0].media.mediaText, "screen and (min-width: 480px)");
assert_equals(rules[0].conditionText, "screen and (min-width: 480px)");
assert_equals(rules[0].media.mediaText,rules[0].conditionText);
assert_equals(rules[0].cssText,
"@media screen and (min-width: 480px) {\n" +
" body { background-color: lightgreen; }\n" +
"}");
}, "@media inherited from CSSConditionRule.");
test(function(){
assert_equals(rules.length, 3);
assert_equals(rules[1].type, 4);
assert_equals(rules[1].cssRules.length, 1);
assert_equals(rules[1].cssRules[0].type, 1);
assert_equals(rules[1].media.mediaText, "");
assert_equals(rules[1].conditionText, "");
assert_equals(rules[1].media.mediaText,rules[1].conditionText);
assert_equals(rules[1].cssText,
"@media {\n" +
" body { background-color: red; }\n" +
"}");
}, "@media inherited from CSSConditionRule, empty media.");
test(function(){
assert_equals(rules.length, 3);
assert_equals(rules[2].cssRules.length, 1);
assert_equals(rules[2].conditionText, "(width: 0)");
assert_equals(rules[2].cssText,
"@supports (width: 0) {\n" +
" s { width: 0px; }\n" +
"}");
}, "@supports inherited from CSSConditionRule.");
</script>