<!doctype html>
<title>document.write</title>
<script src="/resources/testharness.js"></script><script src="/resources/testharnessreport.js"></script>
<script>
var t = async_test();
t.step(function() {
  var s = "<script src='013.js'><" + "/script></svg>]]><path></svg>";
  for (var i=0; i<s.length; i++) {
    document.write(s[i]);
  }
});
</script><script>
t.step(function() {
  assert_equals(document.body.childNodes[0].nodeType, document.ELEMENT_NODE);
  assert_equals(document.body.childNodes[0].localName, "svg");
  assert_equals(document.body.childNodes[0].childNodes[0].nodeType, document.TEXT_NODE);
  assert_equals(document.body.childNodes[0].childNodes[0].data, "</svg>");
  assert_equals(document.body.childNodes[0].childNodes[1].nodeType, document.ELEMENT_NODE);
  assert_equals(document.body.childNodes[0].childNodes[1].localName, "path");
}
);
t.done();
</script>
<div id="log"></div>
