| <!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> |