layout/style/test/test_condition_text.html
author Zack Weinberg <zackw@panix.com>
Wed, 02 Sep 2015 13:54:30 -0400
changeset 260586 1fc07bdd9aa8d04a50c5f77956638bc452df45c5
parent 186743 8137176a31734f39f120dab27b7ddad578c8deab
child 260694 3602ae56a2431a542adf9f9169932d7eaf521195
permissions -rw-r--r--
Bug 1035091 part 2: disable @-moz-document in author sheets. r=heycam

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=814907
-->
<head>
  <title>Test for Bug 814907</title>
  <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
  <style id="style">
    @media all {}
    @media only color {}
    @media (color ) {}
    @media color \0061ND ( monochrome ) {}
    @media (max-width: 200px), (color) {}

    @supports(color: green){}
    @supports (color: green) {}
    @supports ((color: green)) {}
    @supports (color: green) and (color: blue) {}
    @supports ( Font:  20px serif ! Important)  {}
  </style>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=814907">Mozilla Bug 814907</a>
<p id="display"></p>
<div id="content" style="display: none">

</div>
<pre id="test">
<script type="application/javascript">

/** Test for Bug 814907 **/

var style = document.getElementById("style");
style.textContent += " ";

var sheet = style.sheet;

var conditions = [
  "all",
  "only color",
  "(color)",
  "color and (monochrome)",
  "(max-width: 200px), (color)",
  "(color: green)",
  "(color: green)",
  "((color: green))",
  "(color: green) and (color: blue)",
  "( Font:  20px serif ! Important)"
];

is(sheet.cssRules.length, conditions.length);

for (var i = 0; i < sheet.cssRules.length; i++) {
  var rule = sheet.cssRules[i];
  is(rule.conditionText, conditions[i], "rule " + i + " has expected conditionText");
  if (rule.type == CSSRule.MEDIA_RULE) {
    is(rule.conditionText, rule.media.mediaText, "rule " + i + " conditionText matches media.mediaText");
  }
}
</script>
</pre>
</body>
</html>