summaryrefslogtreecommitdiffstats
path: root/dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js
blob: 93b2124ef082442cc3fbfb52c0ed92bcab848829 (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
/* 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";

const TEST_URI = "http://example.com/" +
                 "browser/dom/tests/browser/position.html";

add_task(function testDismissHanger() {
  info("Check that location is not shared when dismissing the geolocation hanger");

  let promisePanelShown = BrowserTestUtils.waitForEvent(PopupNotifications.panel, "popupshown", true);
  yield BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URI);
  yield promisePanelShown;

  // click outside the Geolocation hanger to dismiss it
  window.document.getElementById("nav-bar").click();
  info("Clicked outside the Geolocation panel to dismiss it");

  let hasLocation = yield ContentTask.spawn(gBrowser.selectedBrowser, {}, function*() {
    return content.document.body.innerHTML.includes("location...");
  });

  ok(hasLocation, "Location is not shared");

  yield BrowserTestUtils.removeTab(gBrowser.selectedTab);
});