|  | <!DOCTYPE html> | 
|  | <meta charset=utf-8> | 
|  | <title>ParentNode.prepend</title> | 
|  | <link rel=help href="https://dom.spec.whatwg.org/#dom-parentnode-prepend"> | 
|  | <script src="/resources/testharness.js"></script> | 
|  | <script src="/resources/testharnessreport.js"></script> | 
|  | <script> | 
|  |  | 
|  | function test_prepend(node, nodeName) { | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | parent.prepend(); | 
|  | assert_array_equals(parent.childNodes, []); | 
|  | }, nodeName + '.prepend() without any argument, on a parent having no child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | parent.prepend(null); | 
|  | assert_equals(parent.childNodes[0].textContent, 'null'); | 
|  | }, nodeName + '.prepend() with null as an argument, on a parent having no child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | parent.prepend(undefined); | 
|  | assert_equals(parent.childNodes[0].textContent, 'undefined'); | 
|  | }, nodeName + '.prepend() with undefined as an argument, on a parent having no child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | parent.prepend('text'); | 
|  | assert_equals(parent.childNodes[0].textContent, 'text'); | 
|  | }, nodeName + '.prepend() with only text as an argument, on a parent having no child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | var x = document.createElement('x'); | 
|  | parent.prepend(x); | 
|  | assert_array_equals(parent.childNodes, [x]); | 
|  | }, nodeName + '.prepend() with only one element as an argument, on a parent having no child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | var child = document.createElement('test'); | 
|  | parent.appendChild(child); | 
|  | parent.prepend(null); | 
|  | assert_equals(parent.childNodes[0].textContent, 'null'); | 
|  | assert_equals(parent.childNodes[1], child); | 
|  | }, nodeName + '.prepend() with null as an argument, on a parent having a child.'); | 
|  |  | 
|  | test(function() { | 
|  | var parent = node.cloneNode(); | 
|  | var x = document.createElement('x'); | 
|  | var child = document.createElement('test'); | 
|  | parent.appendChild(child); | 
|  | parent.prepend(x, 'text'); | 
|  | assert_equals(parent.childNodes[0], x); | 
|  | assert_equals(parent.childNodes[1].textContent, 'text'); | 
|  | assert_equals(parent.childNodes[2], child); | 
|  | }, nodeName + '.prepend() with one element and text as argument, on a parent having a child.'); | 
|  | } | 
|  |  | 
|  | test_prepend(document.createElement('div'), 'Element'); | 
|  | test_prepend(document.createDocumentFragment(), 'DocumentFrgment'); | 
|  | </script> | 
|  | </html> |