Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* Any copyright is dedicated to the Public Domain.
2 * http://creativecommons.org/publicdomain/zero/1.0/ */
4 function test() {
5 waitForExplicitFinish();
7 Task.spawn(function task() {
8 let tab = gBrowser.selectedTab = gBrowser.addTab("about:mozilla");
9 yield promiseBrowserLoaded(gBrowser.selectedBrowser);
11 let win = gBrowser.replaceTabWithWindow(tab);
12 yield promiseDelayedStartupFinished(win);
13 yield promiseBrowserHasURL(win.gBrowser.browsers[0], "about:mozilla");
15 win.duplicateTabIn(win.gBrowser.selectedTab, "tab");
16 let browser = win.gBrowser.browsers[1];
17 yield promiseBrowserLoaded(browser);
18 is(browser.currentURI.spec, "about:mozilla", "tab was duplicated");
20 win.close();
21 }).then(finish);
22 }
24 function promiseDelayedStartupFinished(win) {
25 let deferred = Promise.defer();
26 whenDelayedStartupFinished(win, deferred.resolve);
27 return deferred.promise;
28 }
30 function promiseBrowserHasURL(browser, url) {
31 let promise = Promise.resolve();
33 if (browser.contentDocument.readyState === "complete" &&
34 browser.currentURI.spec === url) {
35 return promise;
36 }
38 return promise.then(() => promiseBrowserHasURL(browser, url));
39 }