summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/general/browser_bug676619.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/general/browser_bug676619.js')
-rw-r--r--browser/base/content/test/general/browser_bug676619.js124
1 files changed, 0 insertions, 124 deletions
diff --git a/browser/base/content/test/general/browser_bug676619.js b/browser/base/content/test/general/browser_bug676619.js
deleted file mode 100644
index 6b596481d..000000000
--- a/browser/base/content/test/general/browser_bug676619.js
+++ /dev/null
@@ -1,124 +0,0 @@
-function test () {
- requestLongerTimeout(3);
- waitForExplicitFinish();
-
- var isHTTPS = false;
-
- function loadListener() {
- function testLocation(link, url, next) {
- new TabOpenListener(url, function () {
- gBrowser.removeTab(this.tab);
- }, function () {
- next();
- });
-
- ContentTask.spawn(gBrowser.selectedBrowser, link, contentLink => {
- content.document.getElementById(contentLink).click();
- });
- }
-
- function testLink(link, name, next) {
- addWindowListener("chrome://mozapps/content/downloads/unknownContentType.xul", function (win) {
- ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
- Assert.equal(content.document.getElementById("unload-flag").textContent,
- "Okay", "beforeunload shouldn't have fired");
- }).then(() => {
- is(win.document.getElementById("location").value, name, "file name should match");
- win.close();
- next();
- });
- });
-
- ContentTask.spawn(gBrowser.selectedBrowser, link, contentLink => {
- content.document.getElementById(contentLink).click();
- });
- }
-
- testLink("link1", "test.txt",
- testLink.bind(null, "link2", "video.ogg",
- testLink.bind(null, "link3", "just some video",
- testLink.bind(null, "link4", "with-target.txt",
- testLink.bind(null, "link5", "javascript.txt",
- testLink.bind(null, "link6", "test.blob",
- testLocation.bind(null, "link7", "http://example.com/",
- function () {
- if (isHTTPS) {
- finish();
- } else {
- // same test again with https:
- isHTTPS = true;
- gBrowser.loadURI("https://example.com:443/browser/browser/base/content/test/general/download_page.html");
- }
- })))))));
-
- }
-
- BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser).then(() => {
- loadListener();
- BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser).then(loadListener);
- });
-
- gBrowser.loadURI("http://mochi.test:8888/browser/browser/base/content/test/general/download_page.html");
-}
-
-
-function addWindowListener(aURL, aCallback) {
- Services.wm.addListener({
- onOpenWindow: function(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: function(aXULWindow) { },
- onWindowTitleChange: function(aXULWindow, aNewTitle) { }
- });
-}
-
-// This listens for the next opened tab and checks it is of the right url.
-// opencallback is called when the new tab is fully loaded
-// closecallback is called when the tab is closed
-function TabOpenListener(url, opencallback, closecallback) {
- this.url = url;
- this.opencallback = opencallback;
- this.closecallback = closecallback;
-
- gBrowser.tabContainer.addEventListener("TabOpen", this, false);
-}
-
-TabOpenListener.prototype = {
- url: null,
- opencallback: null,
- closecallback: null,
- tab: null,
- browser: null,
-
- handleEvent: function(event) {
- if (event.type == "TabOpen") {
- gBrowser.tabContainer.removeEventListener("TabOpen", this, false);
- this.tab = event.originalTarget;
- this.browser = this.tab.linkedBrowser;
- BrowserTestUtils.browserLoaded(this.browser, false, this.url).then(() => {
- this.tab.addEventListener("TabClose", this, false);
- var url = this.browser.currentURI.spec;
- is(url, this.url, "Should have opened the correct tab");
- this.opencallback();
- });
- } else if (event.type == "TabClose") {
- if (event.originalTarget != this.tab)
- return;
- this.tab.removeEventListener("TabClose", this, false);
- this.opencallback = null;
- this.tab = null;
- this.browser = null;
- // Let the window close complete
- executeSoon(this.closecallback);
- this.closecallback = null;
- }
- }
-};