browser_experimental_features.js (2039B)
1 /* Any copyright is dedicated to the Public Domain. 2 * http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 "use strict"; 5 6 add_setup(async function setup() { 7 const cleanup = await setupLabsTest(); 8 registerCleanupFunction(cleanup); 9 }); 10 11 add_task(async function testCanOpenWithPref() { 12 await SpecialPowers.pushPrefEnv({ 13 set: [["browser.preferences.experimental", true]], 14 }); 15 16 await openPreferencesViaOpenPreferencesAPI("paneHome", { leaveOpen: true }); 17 let doc = gBrowser.contentDocument; 18 19 let experimentalCategory = doc.getElementById("category-experimental"); 20 ok(experimentalCategory, "The category exists"); 21 ok(!experimentalCategory.hidden, "The category is not hidden"); 22 23 let categoryHeader = await TestUtils.waitForCondition( 24 () => doc.getElementById("firefoxExperimentalCategory"), 25 "Waiting for experimental features category to get initialized" 26 ); 27 ok( 28 categoryHeader.hidden, 29 "The category header should be hidden when Home is selected" 30 ); 31 32 EventUtils.synthesizeMouseAtCenter(experimentalCategory, {}, doc.ownerGlobal); 33 await TestUtils.waitForCondition( 34 () => !categoryHeader.hidden, 35 "Waiting until category is visible" 36 ); 37 38 BrowserTestUtils.removeTab(gBrowser.selectedTab); 39 40 await SpecialPowers.popPrefEnv(); 41 }); 42 43 add_task(async function testSearchFindsExperiments() { 44 await openPreferencesViaOpenPreferencesAPI("paneHome", { leaveOpen: true }); 45 let doc = gBrowser.contentDocument; 46 47 let experimentalCategory = doc.getElementById("category-experimental"); 48 ok(experimentalCategory, "The category exists"); 49 ok(!experimentalCategory.hidden, "The category is not hidden"); 50 51 await TestUtils.waitForCondition( 52 () => doc.querySelector("#pane-experimental-featureGates > .featureGate"), 53 "Waiting for experimental features category to get initialized" 54 ); 55 await evaluateSearchResults( 56 "in development and evolving", 57 ["pane-experimental-featureGates"], 58 /* include experiments */ true 59 ); 60 61 BrowserTestUtils.removeTab(gBrowser.selectedTab); 62 });