4 <script src="../../../resources/js-test.js"></script>
7 <p id="description"></p>
8 <svg xmlns="http://www.w3.org/2000/svg" style="display:none">
10 <rect id="rect"></rect>
13 <pre id="console"></pre>
15 description("Tests to ensure that shadow element cannot be created in elements having dynamically created shadow root.");
17 function testToAddShadowRoot(element, success) {
18 debug(element.nodeName);
21 shouldNotBe("element.createShadowRoot()", "null");
23 shouldThrow("element.createShadowRoot()");
26 var elementsToSuccess = [
27 document.createElement('div'),
28 document.createElement('span'),
29 document.createElement('a'),
30 document.createElement('section'),
31 document.createElement('input'),
32 document.createElement('applet'),
33 document.createElement('embed'),
34 document.createElement('object'),
35 document.getElementById('g'),
36 document.getElementById('rect'),
37 document.getElementById('svg'),
40 // See crbug.com/234020 .
41 var elementsToFail = [
42 document.createElement('audio'),
43 document.createElement('video'),
44 document.createElement('select'),
45 document.createElement('img'),
46 document.createElement('textarea'),
47 document.createElement('iframe'),
48 document.createElement('canvas'),
49 document.createElement('meter'),
50 document.createElement('progress'),
51 document.createElement('keygen'),
52 document.createElement('video'),
53 document.createElement('audio'),
54 document.createElement('fieldset'),
57 for (var i = 0; i < elementsToSuccess.length; ++i) {
58 var element = elementsToSuccess[i];
59 testToAddShadowRoot(element, true);
62 for (var i = 0; i < elementsToFail.length; ++i) {
63 var element = elementsToFail[i];
64 testToAddShadowRoot(element, false);
67 var successfullyParsed = true;