| <!DOCTYPE html> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script src="/common/utils.js"></script> | |
| <script src="../resources/utils.js"></script> | |
| <script src="resources/utils.js"></script> | |
| <body> | |
| <iframe id="iframe"></iframe> | |
| <script> | |
| setup(() => assertSpeculationRulesIsSupported()); | |
| async_test(t => { | |
| const doc = iframe.contentDocument; | |
| const script = doc.createElement('script'); | |
| script.type = 'speculationrules'; | |
| script.text = `{"prerender": [{"source": "list", "urls": [] }] }`; | |
| doc.head.appendChild(script); | |
| iframe.remove(); | |
| t.step_timeout(() => { | |
| document.head.appendChild(script); | |
| t.done(); | |
| }, 0); | |
| }, 'Removing speculationrules script from detached document should not crash'); | |
| </script> |