browser_default_zoom_sitespecific.js (3715B)
1 /* Any copyright is dedicated to the Public Domain. 2 * https://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 "use strict"; 5 6 add_task(async function test_disabled_ss_multi() { 7 await SpecialPowers.pushPrefEnv({ 8 set: [["browser.zoom.siteSpecific", false]], 9 }); 10 const TEST_PAGE_URL = "https://example.org/"; 11 12 // Prepare the test tabs 13 let tab2 = BrowserTestUtils.addTab(gBrowser, TEST_PAGE_URL); 14 let tabBrowser2 = gBrowser.getBrowserForTab(tab2); 15 let isLoaded = BrowserTestUtils.browserLoaded( 16 tabBrowser2, 17 false, 18 TEST_PAGE_URL 19 ); 20 await FullZoomHelper.selectTabAndWaitForLocationChange(tab2); 21 await isLoaded; 22 23 let zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser2); 24 is(zoomLevel, 1, "tab 2 zoom has been set to 100%"); 25 26 let tab1 = BrowserTestUtils.addTab(gBrowser, TEST_PAGE_URL); 27 let tabBrowser1 = gBrowser.getBrowserForTab(tab1); 28 isLoaded = BrowserTestUtils.browserLoaded(tabBrowser1, false, TEST_PAGE_URL); 29 await FullZoomHelper.selectTabAndWaitForLocationChange(tab1); 30 await isLoaded; 31 32 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 33 is(zoomLevel, 1, "tab 1 zoom has been set to 100%"); 34 35 // 67% global zoom 36 await FullZoomHelper.changeDefaultZoom(67); 37 let defaultZoom = await FullZoomHelper.getGlobalValue(); 38 is(defaultZoom, 0.67, "Global zoom is at 67%"); 39 40 await TestUtils.waitForCondition( 41 () => ZoomManager.getZoomForBrowser(tabBrowser1) == 0.67 42 ); 43 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 44 is(zoomLevel, 0.67, "tab 1 zoom has been set to 67%"); 45 46 await FullZoom.enlarge(); 47 48 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 49 is(zoomLevel, 0.8, "tab 1 zoom has been set to 80%"); 50 51 await FullZoomHelper.selectTabAndWaitForLocationChange(tab2); 52 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser2); 53 is(zoomLevel, 1, "tab 2 zoom remains 100%"); 54 55 let tab3 = BrowserTestUtils.addTab(gBrowser, TEST_PAGE_URL); 56 let tabBrowser3 = gBrowser.getBrowserForTab(tab3); 57 isLoaded = BrowserTestUtils.browserLoaded(tabBrowser3, false, TEST_PAGE_URL); 58 await FullZoomHelper.selectTabAndWaitForLocationChange(tab3); 59 await isLoaded; 60 61 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser3); 62 is(zoomLevel, 0.67, "tab 3 zoom has been set to 67%"); 63 64 await FullZoomHelper.removeTabAndWaitForLocationChange(); 65 await FullZoomHelper.removeTabAndWaitForLocationChange(); 66 await FullZoomHelper.removeTabAndWaitForLocationChange(); 67 }); 68 69 add_task(async function test_disabled_ss_custom() { 70 await SpecialPowers.pushPrefEnv({ 71 set: [["browser.zoom.siteSpecific", false]], 72 }); 73 const TEST_PAGE_URL = "https://example.org/"; 74 75 // 150% global zoom 76 await FullZoomHelper.changeDefaultZoom(150); 77 let defaultZoom = await FullZoomHelper.getGlobalValue(); 78 is(defaultZoom, 1.5, "Global zoom is at 150%"); 79 80 // Prepare test tab 81 let tab1 = BrowserTestUtils.addTab(gBrowser, TEST_PAGE_URL); 82 let tabBrowser1 = gBrowser.getBrowserForTab(tab1); 83 let isLoaded = BrowserTestUtils.browserLoaded( 84 tabBrowser1, 85 false, 86 TEST_PAGE_URL 87 ); 88 await FullZoomHelper.selectTabAndWaitForLocationChange(tab1); 89 await isLoaded; 90 91 await TestUtils.waitForCondition( 92 () => ZoomManager.getZoomForBrowser(tabBrowser1) == 1.5 93 ); 94 let zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 95 is(zoomLevel, 1.5, "tab 1 zoom has been set to 150%"); 96 97 await FullZoom.enlarge(); 98 99 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 100 is(zoomLevel, 1.7, "tab 1 zoom has been set to 170%"); 101 102 await BrowserTestUtils.reloadTab(tab1); 103 104 zoomLevel = ZoomManager.getZoomForBrowser(tabBrowser1); 105 is(zoomLevel, 1.7, "tab 1 zoom remains 170%"); 106 107 await FullZoomHelper.removeTabAndWaitForLocationChange(); 108 });