diff options
Diffstat (limited to 'toolkit/mozapps/extensions/test/browser/browser_select_confirm.js')
-rw-r--r-- | toolkit/mozapps/extensions/test/browser/browser_select_confirm.js | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/toolkit/mozapps/extensions/test/browser/browser_select_confirm.js b/toolkit/mozapps/extensions/test/browser/browser_select_confirm.js deleted file mode 100644 index 1204777ce..000000000 --- a/toolkit/mozapps/extensions/test/browser/browser_select_confirm.js +++ /dev/null @@ -1,181 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - * http://creativecommons.org/publicdomain/zero/1.0/ - */ - -// Tests the confirmation part of the post-app-update dialog - -var gProvider; -var gWin; - -function waitForView(aView, aCallback) { - var view = gWin.document.getElementById(aView); - if (view.parentNode.selectedPanel == view) { - aCallback(); - return; - } - - view.addEventListener("ViewChanged", function() { - view.removeEventListener("ViewChanged", arguments.callee, false); - try { - aCallback(); - } - catch (e) { - ok(false, e); - } - }, false); -} - -/** - * Creates 4 test add-ons. Two are disabled and two enabled. - * - * @param aAppDisabled - * The appDisabled property for the test add-ons - * @param aUpdateAvailable - * True if the test add-ons should claim to have an update available - */ -function setupUI(aAppDisabled, aUpdateAvailable, aCallback) { - if (gProvider) - gProvider.unregister(); - - gProvider = new MockProvider(); - - for (var i = 1; i < 5; i++) { - var addon = new MockAddon("test" + i + "@tests.mozilla.org", - "Test Add-on " + i, "extension"); - addon.version = "1.0"; - addon.userDisabled = (i > 2); - addon.appDisabled = aAppDisabled; - addon.isActive = !addon.userDisabled && !addon.appDisabled; - - addon.findUpdates = function(aListener, aReason, aAppVersion, aPlatformVersion) { - if (aUpdateAvailable) { - var newAddon = new MockAddon(this.id, this.name, "extension"); - newAddon.version = "2.0"; - var install = new MockInstall(this.name, this.type, newAddon); - install.existingAddon = this; - aListener.onUpdateAvailable(this, install); - } - - aListener.onUpdateFinished(this, AddonManager.UPDATE_STATUS_NO_ERROR); - }; - - gProvider.addAddon(addon); - } - - gWin = Services.ww.openWindow(null, - "chrome://mozapps/content/extensions/selectAddons.xul", - "", - "chrome,centerscreen,dialog,titlebar", - null); - waitForFocus(function() { - waitForView("select", function() { - var row = gWin.document.getElementById("select-rows").firstChild.nextSibling; - while (row) { - if (!row.id || row.id.indexOf("@tests.mozilla.org") < 0) { - // not a test add-on - row = row.nextSibling; - continue; - } - - if (row.id == "test2@tests.mozilla.org" || - row.id == "test4@tests.mozilla.org") { - row.disable(); - } - else { - row.keep(); - } - row = row.nextSibling; - } - - waitForView("confirm", aCallback); - EventUtils.synthesizeMouseAtCenter(gWin.document.getElementById("next"), {}, gWin); - }); - }, gWin); -} - -function test() { - waitForExplicitFinish(); - - run_next_test(); -} - -function end_test() { - finish(); -} - -// Test for disabling -add_test(function disabling_test() { - setupUI(false, false, function() { - ok(gWin.document.getElementById("incompatible-list").hidden, "Incompatible list should be hidden"); - ok(gWin.document.getElementById("update-list").hidden, "Update list should be hidden"); - - var list = gWin.document.getElementById("disable-list"); - ok(!list.hidden, "Disable list should be visible"); - is(list.childNodes.length, 2, "Should be one add-on getting disabled (plus the header)"); - is(list.childNodes[1].id, "test2@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[1].getAttribute("name"), "Test Add-on 2", "Should be the right add-on name"); - - var list = gWin.document.getElementById("enable-list"); - ok(!list.hidden, "Enable list should be visible"); - is(list.childNodes.length, 2, "Should be one add-on getting disabled (plus the header)"); - is(list.childNodes[1].id, "test3@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[1].getAttribute("name"), "Test Add-on 3", "Should be the right add-on name"); - - ok(gWin.document.getElementById("next").hidden, "Next button should be hidden"); - ok(!gWin.document.getElementById("done").hidden, "Done button should be visible"); - gWin.close(); - - run_next_test(); - }); -}); - -// Test for incompatible -add_test(function incompatible_test() { - setupUI(true, false, function() { - ok(gWin.document.getElementById("update-list").hidden, "Update list should be hidden"); - ok(gWin.document.getElementById("disable-list").hidden, "Disable list should be hidden"); - ok(gWin.document.getElementById("enable-list").hidden, "Enable list should be hidden"); - - var list = gWin.document.getElementById("incompatible-list"); - ok(!list.hidden, "Incompatible list should be visible"); - is(list.childNodes.length, 3, "Should be two add-ons waiting to be compatible (plus the header)"); - is(list.childNodes[1].id, "test1@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[1].getAttribute("name"), "Test Add-on 1", "Should be the right add-on name"); - is(list.childNodes[2].id, "test3@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[2].getAttribute("name"), "Test Add-on 3", "Should be the right add-on name"); - - ok(gWin.document.getElementById("next").hidden, "Next button should be hidden"); - ok(!gWin.document.getElementById("done").hidden, "Done button should be visible"); - gWin.close(); - - run_next_test(); - }); -}); - -// Test for updates -add_test(function update_test() { - setupUI(false, true, function() { - ok(gWin.document.getElementById("incompatible-list").hidden, "Incompatible list should be hidden"); - ok(gWin.document.getElementById("enable-list").hidden, "Enable list should be hidden"); - - var list = gWin.document.getElementById("update-list"); - ok(!list.hidden, "Update list should be visible"); - is(list.childNodes.length, 3, "Should be two add-ons waiting to be updated (plus the header)"); - is(list.childNodes[1].id, "test1@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[1].getAttribute("name"), "Test Add-on 1", "Should be the right add-on name"); - is(list.childNodes[2].id, "test3@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[2].getAttribute("name"), "Test Add-on 3", "Should be the right add-on name"); - - list = gWin.document.getElementById("disable-list"); - ok(!list.hidden, "Disable list should be visible"); - is(list.childNodes.length, 2, "Should be one add-on getting disabled (plus the header)"); - is(list.childNodes[1].id, "test2@tests.mozilla.org", "Should be the right add-on ID"); - is(list.childNodes[1].getAttribute("name"), "Test Add-on 2", "Should be the right add-on name"); - - ok(!gWin.document.getElementById("next").hidden, "Next button should be visible"); - ok(gWin.document.getElementById("done").hidden, "Done button should be hidden"); - gWin.close(); - - run_next_test(); - }); -}); |