diff options
Diffstat (limited to 'browser/base/content/test/general/browser_bug477014.js')
-rw-r--r-- | browser/base/content/test/general/browser_bug477014.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/browser/base/content/test/general/browser_bug477014.js b/browser/base/content/test/general/browser_bug477014.js new file mode 100644 index 0000000000..d89903579c --- /dev/null +++ b/browser/base/content/test/general/browser_bug477014.js @@ -0,0 +1,36 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +// That's a gecko! +const iconURLSpec = + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg=="; +var testPage = "data:text/plain,test bug 477014"; + +add_task(async function() { + let tabToDetach = BrowserTestUtils.addTab(gBrowser, testPage); + await BrowserTestUtils.browserStopped(tabToDetach.linkedBrowser); + + gBrowser.setIcon( + tabToDetach, + iconURLSpec, + Services.scriptSecurityManager.getSystemPrincipal() + ); + tabToDetach.setAttribute("busy", "true"); + + // detach and set the listener on the new window + let newWindow = gBrowser.replaceTabWithWindow(tabToDetach); + await BrowserTestUtils.waitForEvent( + tabToDetach.linkedBrowser, + "SwapDocShells" + ); + + is( + newWindow.gBrowser.selectedTab.hasAttribute("busy"), + true, + "Busy attribute should be correct" + ); + is(newWindow.gBrowser.getIcon(), iconURLSpec, "Icon should be correct"); + + newWindow.close(); +}); |