https://github.com/web-platform-tests/wpt
Raw File
Tip revision: 9b6e516d529b526e06447d171dc2937f646bbe89 authored by Bear Travis on 11 July 2014, 21:52:43 UTC
Adding basic tests for the CSS.supports API as part of the CSS Conditional Rules Module L3.
Tip revision: 9b6e516
setter.html
<!DOCTYPE html>
<title>innerText setter test</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="container"></div>
<script>
function setupTest(context, plain) {
  // context is either a string or an element node
  if (typeof context === "string") {
    container.innerHTML = context;
  } else {
    container.innerHTML = "";
    container.appendChild(context);
  }
  var e = container.firstChild;
  while (e && e.nodeType != Node.ELEMENT_NODE) {
    e = e.nextSibling;
  }
  var oldChild = e.firstChild;
  e.innerText = plain;
  return [e, oldChild];
}
function testText(context, plain, expectedText, msg) {
  test(function(){
    var arr = setupTest(context, plain);
    var e = arr[0];
    var oldChild = arr[1];
    assert_not_equals(e.firstChild, null, "Should have a child");
    assert_equals(e.firstChild.nodeType, Node.TEXT_NODE, "Child should be a text node");
    assert_equals(e.firstChild.nextSibling, null, "Should have only one child");
    assert_equals(e.firstChild.data, expectedText);
    assert_not_equals(e.firstChild, oldChild, "Child should be a *new* text node");
  }, msg);
}
function testHTML(context, plain, expectedHTML, msg) {
  test(function(){
    var e = setupTest(context, plain)[0];
    assert_equals(e.innerHTML, expectedHTML);
    var child = e.firstChild;
    while (child) {
      if (child.nodeType === Node.TEXT_NODE) {
        assert_not_equals(child.data, "", "Should not have empty text nodes");
      }
      child = child.nextSibling;
    }
  }, msg);
}
</script>
<script src="setter-tests.js"></script>
back to top