Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /svg/linking/scripted/a-download-click.svg - WPT Dashboard Interop Dashboard
<?xml version="1.0" encoding="UTF-8"?>
<title>Clicking on an <a> element with a download attribute must not throw an exception</title>
<metadata>
</metadata>
<h:script src="/resources/testharness.js"/>
<h:script src="/resources/testharnessreport.js"/>
<script><![CDATA[
"use strict";
async_test(t => {
const root = document.querySelector("svg");
frame.addEventListener("load", t.step_func(function () {
frame.contentWindow.addEventListener(
"beforeunload", t.unreached_func("Navigated instead of downloading"));
const string = "test";
const blob = new Blob([string], { type: "text/html" });
const link = frame.contentDocument.querySelector("#blob-url");
link.href.baseVal = URL.createObjectURL(blob);
link.dispatchEvent(new Event('click'));
t.step_timeout(() => t.done(), 1000);
}));
frame.src = "resources/a-download-click.svg";
root.appendChild(frame);
}, "Clicking on an <a> element with a download attribute must not throw an exception");
]]></script>
</svg>