forked from mirrors/gecko-dev
		
	 f1b581daa2
			
		
	
	
		f1b581daa2
		
	
	
	
	
		
			
			MozReview-Commit-ID: CSuNpA0Yq0w --HG-- extra : rebase_source : 9a207a7cd913038ebcbffc6528e648e3b45af104
		
			
				
	
	
		
			72 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* Any copyright is dedicated to the Public Domain.
 | |
|  * http://creativecommons.org/publicdomain/zero/1.0/ */
 | |
| 
 | |
| const PREF_NAME = "browser.urlbar.matchBuckets";
 | |
| const HISTORY_FIRST_PREF_VALUE = "general:5,suggestion:Infinity";
 | |
| const CHECKBOX_ID = "showSearchSuggestionsFirstCheckbox";
 | |
| 
 | |
| // Open preferences with search suggestions shown first (the default).
 | |
| add_task(async function openWithSearchSuggestionsShownFirst() {
 | |
|   await SpecialPowers.pushPrefEnv({set: [["browser.urlbar.suggest.searches", true]]});
 | |
| 
 | |
|   // The pref should be cleared initially so that search suggestions are shown
 | |
|   // first (the default).
 | |
|   Assert.equal(Services.prefs.getCharPref(PREF_NAME, ""), "",
 | |
|                "Pref should be cleared initially");
 | |
| 
 | |
|   // Open preferences.  The checkbox should be checked.
 | |
|   await openPreferencesViaOpenPreferencesAPI("search", { leaveOpen: true });
 | |
|   let doc = gBrowser.selectedBrowser.contentDocument;
 | |
|   let checkbox = doc.getElementById(CHECKBOX_ID);
 | |
|   Assert.equal(checkbox.checked, true, "Checkbox should be checked");
 | |
| 
 | |
|   // Uncheck the checkbox.
 | |
|   checkbox.checked = false;
 | |
|   checkbox.doCommand();
 | |
| 
 | |
|   // The pref should now be set so that history is shown first.
 | |
|   Assert.equal(Services.prefs.getCharPref(PREF_NAME, ""),
 | |
|                HISTORY_FIRST_PREF_VALUE,
 | |
|                "Pref should now be set to show history first");
 | |
| 
 | |
|   // Clear the pref.
 | |
|   Services.prefs.clearUserPref(PREF_NAME);
 | |
| 
 | |
|   // The checkbox should have become checked again.
 | |
|   Assert.equal(checkbox.checked, true,
 | |
|                "Checkbox should become checked after clearing pref");
 | |
| 
 | |
|   // Clean up.
 | |
|   gBrowser.removeCurrentTab();
 | |
| });
 | |
| 
 | |
| // Open preferences with history shown first.
 | |
| add_task(async function openWithHistoryShownFirst() {
 | |
|   // Set the pref to show history first.
 | |
|   Services.prefs.setCharPref(PREF_NAME, HISTORY_FIRST_PREF_VALUE);
 | |
| 
 | |
|   // Open preferences.  The checkbox should be unchecked.
 | |
|   await openPreferencesViaOpenPreferencesAPI("search", { leaveOpen: true });
 | |
|   let doc = gBrowser.selectedBrowser.contentDocument;
 | |
|   let checkbox = doc.getElementById(CHECKBOX_ID);
 | |
|   Assert.equal(checkbox.checked, false, "Checkbox should be unchecked");
 | |
| 
 | |
|   // Check the checkbox.
 | |
|   checkbox.checked = true;
 | |
|   checkbox.doCommand();
 | |
| 
 | |
|   // The pref should now be cleared so that search suggestions are shown first.
 | |
|   Assert.equal(Services.prefs.getCharPref(PREF_NAME, ""), "",
 | |
|                "Pref should now be cleared to show search suggestions first");
 | |
| 
 | |
|   // Set the pref again.
 | |
|   Services.prefs.setCharPref(PREF_NAME, HISTORY_FIRST_PREF_VALUE);
 | |
| 
 | |
|   // The checkbox should have become unchecked again.
 | |
|   Assert.equal(checkbox.checked, false,
 | |
|                "Checkbox should become unchecked after setting pref");
 | |
| 
 | |
|   // Clean up.
 | |
|   gBrowser.removeCurrentTab();
 | |
|   Services.prefs.clearUserPref(PREF_NAME);
 | |
| });
 |