diff options
Diffstat (limited to 'toolkit/mozapps/webextensions/test/browser/browser_bug714593.js')
-rw-r--r-- | toolkit/mozapps/webextensions/test/browser/browser_bug714593.js | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/toolkit/mozapps/webextensions/test/browser/browser_bug714593.js b/toolkit/mozapps/webextensions/test/browser/browser_bug714593.js deleted file mode 100644 index b9a7faa5e..000000000 --- a/toolkit/mozapps/webextensions/test/browser/browser_bug714593.js +++ /dev/null @@ -1,140 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - * http://creativecommons.org/publicdomain/zero/1.0/ - */ - -// Tests that installed addons in the search view load inline prefs properly - -const PREF_GETADDONS_GETSEARCHRESULTS = "extensions.getAddons.search.url"; -const NO_MATCH_URL = TESTROOT + "browser_searching_empty.xml"; - -var gManagerWindow; -var gCategoryUtilities; -var gProvider; - -function test() { - // Turn on searching for this test - Services.prefs.setIntPref(PREF_SEARCH_MAXRESULTS, 15); - - waitForExplicitFinish(); - - gProvider = new MockProvider(); - - gProvider.createAddons([{ - id: "inlinesettings2@tests.mozilla.org", - name: "Inline Settings (Regular)", - version: "1", - optionsURL: CHROMEROOT + "options.xul", - optionsType: AddonManager.OPTIONS_TYPE_INLINE - }]); - - open_manager("addons://list/extension", function(aWindow) { - gManagerWindow = aWindow; - gCategoryUtilities = new CategoryUtilities(gManagerWindow); - run_next_test(); - }); -} - -function end_test() { - close_manager(gManagerWindow, finish); -} - -/* - * Checks whether or not the Add-ons Manager is currently searching - * - * @param aExpectedSearching - * The expected isSearching state - */ -function check_is_searching(aExpectedSearching) { - var loading = gManagerWindow.document.getElementById("search-loading"); - is(!is_hidden(loading), aExpectedSearching, - "Search throbber should be showing iff currently searching"); -} - -/* - * Completes a search - * - * @param aQuery - * The query to search for - * @param aFinishImmediately - * Boolean representing whether or not the search is expected to - * finish immediately - * @param aCallback - * The callback to call when the search is done - * @param aCategoryType - * The expected selected category after the search is done. - * Optional and defaults to "search" - */ -function search(aQuery, aFinishImmediately, aCallback, aCategoryType) { - // Point search to the correct xml test file - Services.prefs.setCharPref(PREF_GETADDONS_GETSEARCHRESULTS, NO_MATCH_URL); - - aCategoryType = aCategoryType ? aCategoryType : "search"; - - var searchBox = gManagerWindow.document.getElementById("header-search"); - searchBox.value = aQuery; - - EventUtils.synthesizeMouseAtCenter(searchBox, { }, gManagerWindow); - EventUtils.synthesizeKey("VK_RETURN", { }, gManagerWindow); - - var finishImmediately = true; - wait_for_view_load(gManagerWindow, function() { - is(gCategoryUtilities.selectedCategory, aCategoryType, "Expected category view should be selected"); - is(gCategoryUtilities.isTypeVisible("search"), aCategoryType == "search", - "Search category should only be visible if it is the current view"); - is(finishImmediately, aFinishImmediately, "Search should finish immediately only if expected"); - - aCallback(); - }); - - finishImmediately = false - if (!aFinishImmediately) - check_is_searching(true); -} - -/* - * Get item for a specific add-on by name - * - * @param aName - * The name of the add-on to search for - * @return Row of add-on if found, null otherwise - */ -function get_addon_item(aName) { - var id = aName + "@tests.mozilla.org"; - var list = gManagerWindow.document.getElementById("search-list"); - var rows = list.getElementsByTagName("richlistitem"); - for (let row of rows) { - if (row.mAddon && row.mAddon.id == id) - return row; - } - - return null; -} - -add_test(function() { - search("settings", false, function() { - var localFilter = gManagerWindow.document.getElementById("search-filter-local"); - EventUtils.synthesizeMouseAtCenter(localFilter, { }, gManagerWindow); - - var item = get_addon_item("inlinesettings2"); - // Force the XBL binding to apply. - item.clientTop; - var button = gManagerWindow.document.getAnonymousElementByAttribute(item, "anonid", "preferences-btn"); - is_element_visible(button, "Preferences button should be visible"); - - EventUtils.synthesizeMouseAtCenter(button, { clickCount: 1 }, gManagerWindow); - wait_for_view_load(gManagerWindow, function() { - is(gManagerWindow.gViewController.currentViewObj, gManagerWindow.gDetailView, "View should have changed to detail"); - - var searchCategory = gManagerWindow.document.getElementById("category-search"); - EventUtils.synthesizeMouseAtCenter(searchCategory, { }, gManagerWindow); - wait_for_view_load(gManagerWindow, function() { - is(gManagerWindow.gViewController.currentViewObj, gManagerWindow.gSearchView, "View should have changed back to search"); - - // Reset filter to remote to avoid breaking later tests. - var remoteFilter = gManagerWindow.document.getElementById("search-filter-remote"); - EventUtils.synthesizeMouseAtCenter(remoteFilter, { }, gManagerWindow); - run_next_test(); - }); - }); - }); -}); |