summaryrefslogtreecommitdiffstats
path: root/browser/components/customizableui/test/browser_947914_button_zoomReset.js
blob: 372097665b6fb961b411e6743924c80eb366cfc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

"use strict";

var initialPageZoom = ZoomManager.zoom;

add_task(function*() {
  info("Check zoom reset button existence and functionality");

  is(initialPageZoom, 1, "Page zoom reset correctly");
  ZoomManager.zoom = 0.5;
  yield PanelUI.show();
  info("Menu panel was opened");

  let zoomResetButton = document.getElementById("zoom-reset-button");
  ok(zoomResetButton, "Zoom reset button exists in Panel Menu");

  zoomResetButton.click();
  yield new Promise(SimpleTest.executeSoon);

  let pageZoomLevel = Math.floor(ZoomManager.zoom * 100);
  let expectedZoomLevel = 100;
  let buttonZoomLevel = parseInt(zoomResetButton.getAttribute("label"), 10);
  is(pageZoomLevel, expectedZoomLevel, "Page zoom reset correctly");
  is(pageZoomLevel, buttonZoomLevel, "Button displays the correct zoom level");

  // close the panel
  let panelHiddenPromise = promisePanelHidden(window);
  PanelUI.hide();
  yield panelHiddenPromise;
  info("Menu panel was closed");
});

add_task(function* asyncCleanup() {
  // reset zoom level
  ZoomManager.zoom = initialPageZoom;
  info("Zoom level was restored");
});