| OLD | NEW |
| (Empty) |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <head> | |
| 4 <title>SVG Style element has error on bad style nonce</title> | |
| 5 <meta http-equiv="Content-Security-Policy" content="style-src 'nonce-nonceyn
once'"> | |
| 6 <script src="/resources/testharness.js"></script> | |
| 7 <script src="/resources/testharnessreport.js"></script> | |
| 8 <script> | |
| 9 function verifyStep1() { | |
| 10 var color = window.getComputedStyle(document.querySelector('p')).col
or; | |
| 11 assert_equals(color, "rgb(0, 128, 0)", "The color of the paragraph i
s still green after initial svg style."); | |
| 12 } | |
| 13 | |
| 14 function setupStep2() { | |
| 15 var e = document.getElementById("svgelement"); | |
| 16 var sty = document.createElementNS("http://www.w3.org/2000/svg", "st
yle"); | |
| 17 sty.innerHTML = "p { color: red; }"; | |
| 18 sty.onerror = styleError; | |
| 19 e.appendChild(sty); | |
| 20 } | |
| 21 function verifyStep2() { | |
| 22 var color = window.getComputedStyle(document.querySelector('p')).col
or; | |
| 23 assert_equals(color, "rgb(0, 128, 0)", "The color of the paragraph i
s still green after inserted svg style."); | |
| 24 } | |
| 25 | |
| 26 function setupStep3() { | |
| 27 var e = document.getElementById('style1'); | |
| 28 e.innerHTML = "p { color: blue; }"; | |
| 29 } | |
| 30 function verifyStep3() { | |
| 31 var color = window.getComputedStyle(document.querySelector('p')).col
or; | |
| 32 assert_equals(color, "rgb(0, 128, 0)", "The color of the paragraph i
s still green after changing svg style."); | |
| 33 test.done(); | |
| 34 } | |
| 35 | |
| 36 var verifySteps = [ verifyStep1, verifyStep2, verifyStep3 ]; | |
| 37 var setupSteps = [ setupStep2, setupStep3 ]; | |
| 38 | |
| 39 var test = async_test("Test that paragraph remains green and error event
s received."); | |
| 40 | |
| 41 function styleError() { | |
| 42 test.step(function() { | |
| 43 verifySteps.shift()(); | |
| 44 var nextSetup = setupSteps.shift(); | |
| 45 if (nextSetup) | |
| 46 nextSetup(); | |
| 47 }); | |
| 48 } | |
| 49 </script> | |
| 50 </head> | |
| 51 <body> | |
| 52 <svg id="svgelement" xmlns="http://www.w3.org/2000/svg" width="800" height="
100"> | |
| 53 <style nonce="nonceynonce">p { color: green; }</style> | |
| 54 <style id="style1" nonce="notavalidnonce" onerror="styleError();">p { co
lor: red; }</style> | |
| 55 <p>A test paragraph</p> | |
| 56 </svg> | |
| 57 </body> | |
| 58 </html> | |
| OLD | NEW |