summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/zoom/browser_image_zoom_tabswitch.js
blob: 83ffab26e8ddcc2aad231488c54e7d159cb818b4 (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
/* 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";

function test() {
  let tab1, tab2;
  const TEST_IMAGE =
    // eslint-disable-next-line @microsoft/sdl/no-insecure-url
    "http://example.org/browser/browser/base/content/test/general/moz.png";

  waitForExplicitFinish();

  (async function () {
    tab1 = BrowserTestUtils.addTab(gBrowser);
    tab2 = BrowserTestUtils.addTab(gBrowser);
    await FullZoomHelper.selectTabAndWaitForLocationChange(tab1);
    await FullZoomHelper.load(tab1, TEST_IMAGE);

    is(ZoomManager.zoom, 1, "initial zoom level for first should be 1");

    FullZoom.enlarge();
    let zoom = ZoomManager.zoom;
    isnot(zoom, 1, "zoom level should have changed");

    await FullZoomHelper.selectTabAndWaitForLocationChange(tab2);
    is(ZoomManager.zoom, 1, "initial zoom level for second tab should be 1");

    await FullZoomHelper.selectTabAndWaitForLocationChange(tab1);
    is(
      ZoomManager.zoom,
      zoom,
      "zoom level for first tab should not have changed"
    );

    await FullZoomHelper.removeTabAndWaitForLocationChange(tab1);
    await FullZoomHelper.removeTabAndWaitForLocationChange(tab2);
  })().then(finish, FullZoomHelper.failAndContinue(finish));
}