<!DOCTYPE html>
<title>Setting document.body to incorrect values</title>
<link rel="author" title="Ms2ger" href="mailto:ms2ger@gmail.com">
<link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-document-body">
<link rel="help" href="https://heycam.github.io/webidl/#es-interface">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var originalBody = document.body;
test(function() {
  assert_throws(new TypeError(), function() {
    document.body = "text"
  })
}, "Should throw a TypeError when trying to set document.body to a string.")
test(function() {
  assert_throws("HierarchyRequestError", function() {
    document.body = document.createElement("div")
  })
}, "Should throw a HierarchyRequestError when trying to set document.body to a div element.")
test(function() {
  var doc = document.implementation.createHTMLDocument("")
  doc.removeChild(doc.documentElement)
  assert_throws("HierarchyRequestError", function() {
    doc.body = document.createElement("body")
  })
}, "Should throw a HierarchyRequestError when trying to set document.body when there's no root element.")
test(function() {
  assert_equals(document.body, originalBody);
}, "document.body has not changed")
</script>
