Bug 1403641: Test data: URI download. r=bz

This commit is contained in:
Christoph Kerschbaumer 2017-10-04 08:44:36 +02:00
Родитель 04a3ca2e32
Коммит b0dac2b742
3 изменённых файлов: 54 добавлений и 0 удалений

Просмотреть файл

@ -3,3 +3,6 @@
support-files =
file_toplevel_data_navigations.sjs
file_toplevel_data_meta_redirect.html
[browser_test_data_download.js]
support-files =
file_data_download.html

Просмотреть файл

@ -0,0 +1,37 @@
"use strict";
const kTestPath = getRootDirectory(gTestPath)
.replace("chrome://mochitests/content", "http://example.com")
const kTestURI = kTestPath + "file_data_download.html";
function addWindowListener(aURL, aCallback) {
Services.wm.addListener({
onOpenWindow(aXULWindow) {
info("window opened, waiting for focus");
Services.wm.removeListener(this);
var domwindow = aXULWindow.QueryInterface(Ci.nsIInterfaceRequestor)
.getInterface(Ci.nsIDOMWindow);
waitForFocus(function() {
is(domwindow.document.location.href, aURL, "should have seen the right window open");
aCallback(domwindow);
}, domwindow);
},
onCloseWindow(aXULWindow) { },
onWindowTitleChange(aXULWindow, aNewTitle) { }
});
}
function test() {
waitForExplicitFinish();
Services.prefs.setBoolPref("security.data_uri.block_toplevel_data_uri_navigations", true);
registerCleanupFunction(function() {
Services.prefs.clearUserPref("security.data_uri.block_toplevel_data_uri_navigations");
});
addWindowListener("chrome://mozapps/content/downloads/unknownContentType.xul", function(win) {
is(win.document.getElementById("location").value, "data-foo.html",
"file name of download should match");
win.close();
finish();
});
gBrowser.loadURI(kTestURI);
}

Просмотреть файл

@ -0,0 +1,14 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Test download attribute for data: URI</title>
</head>
<body>
<a href="data:text/html,<body>data download</body>" download="data-foo.html" id="testlink">download data</a>
<script>
// click the link to have the downoad panel appear
let testlink = document.getElementById("testlink");
testlink.click();
</script>
</body>
</html>