test_bug1318303.html (1744B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=1318303 5 --> 6 <head> 7 <meta charset="utf-8"> 8 <title>Test for Bug 1318303</title> 9 <script src="/tests/SimpleTest/SimpleTest.js"></script> 10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 11 <script> 12 var _createIterator = function (root) { 13 return document.createNodeIterator.call(root.ownerDocument || root, 14 root, 15 NodeFilter.SHOW_ELEMENT 16 | NodeFilter.SHOW_COMMENT 17 | NodeFilter.SHOW_TEXT, 18 function () { 19 return NodeFilter.FILTER_ACCEPT; 20 }, 21 false 22 ); 23 }; 24 25 evil = "<body><object data=''><p></p></object></body>"; 26 doc = new DOMParser().parseFromString(evil, 'text/html'); 27 body = doc.getElementsByTagName("body")[0]; 28 nodeIterator = _createIterator(body); 29 try { 30 while ((currentNode = nodeIterator.nextNode())) { 31 currentNode.removeAttribute("data"); 32 } 33 ok(true, "Removing data attributes did not throw error"); 34 } catch(err) { 35 ok(false, "Removing data attribute threw error!"); 36 } 37 obj = doc.getElementsByTagName("object")[0]; 38 const objLC = SpecialPowers.Ci.nsIObjectLoadingContent; 39 40 obj instanceof objLC; 41 obj = SpecialPowers.wrap(obj); 42 43 is(obj.displayedType, objLC.TYPE_FALLBACK, "expected fallback"); 44 </script> 45 </head> 46 </html>