summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/urlbar/browser_wyciwyg_urlbarCopying.js
blob: 54b174aa8e6b9223b06b9e42d1e4717a94cfe08e (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
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

function testURLBarCopy(targetValue) {
  return new Promise((resolve, reject) => {
    info("Expecting copy of: " + targetValue);
    waitForClipboard(targetValue, function () {
      gURLBar.focus();
      gURLBar.select();

      goDoCommand("cmd_copy");
    }, resolve, () => {
      ok(false, "Clipboard copy failed");
      reject();
    });
  });
}

add_task(function* () {
  const url = "http://mochi.test:8888/browser/browser/base/content/test/urlbar/test_wyciwyg_copying.html";
  let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, url);

  yield BrowserTestUtils.synthesizeMouseAtCenter("#btn", {}, tab.linkedBrowser);
  let currentURL = gBrowser.currentURI.spec;
  ok(/^wyciwyg:\/\//i.test(currentURL), currentURL + " is a wyciwyg URI");

  yield testURLBarCopy(url);

  while (gBrowser.tabs.length > 1)
    gBrowser.removeCurrentTab();
});