summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js')
-rw-r--r--toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js b/toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js
new file mode 100644
index 000000000..0d96e7cbe
--- /dev/null
+++ b/toolkit/mozapps/extensions/test/xpinstall/browser_bug638292.js
@@ -0,0 +1,40 @@
+// ----------------------------------------------------------------------------
+// Test whether an InstallTrigger.enabled is working
+add_task(function * ()
+{
+ let testtab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, TESTROOT + "bug638292.html");
+
+ function* verify(link, button)
+ {
+ info("Clicking " + link);
+
+ let waitForNewTabPromise = BrowserTestUtils.waitForNewTab(gBrowser);
+
+ yield BrowserTestUtils.synthesizeMouseAtCenter("#" + link, { button: button },
+ gBrowser.selectedBrowser);
+
+ let newtab = yield waitForNewTabPromise;
+
+ yield BrowserTestUtils.browserLoaded(newtab.linkedBrowser);
+
+ let result = yield ContentTask.spawn(newtab.linkedBrowser, { }, function* () {
+ return (content.document.getElementById("enabled").textContent == "true");
+ });
+
+ ok(result, "installTrigger for " + link + " should have been enabled");
+
+ // Focus the old tab (link3 is opened in the background)
+ if (link != "link3") {
+ yield BrowserTestUtils.switchTab(gBrowser, testtab);
+ }
+ gBrowser.removeTab(newtab);
+ }
+
+ yield* verify("link1", 0);
+ yield* verify("link2", 0);
+ yield* verify("link3", 1);
+
+ gBrowser.removeCurrentTab();
+});
+
+