summaryrefslogtreecommitdiffstats
path: root/toolkit/content/tests/browser/browser_about_networking.js
blob: 1cf0708c22cee8a38eeed54c1fb723ea53955f6b (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
41
42
43
44
45
46
47
48
49
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

const { ContentTaskUtils } = ChromeUtils.importESModule(
  "resource://testing-common/ContentTaskUtils.sys.mjs"
);

add_task(async function test_first() {
  registerCleanupFunction(() => {
    // Must clear mode first, otherwise we'll have non-local connections to
    // the cloudflare URL.
    Services.prefs.clearUserPref("network.trr.mode");
    Services.prefs.clearUserPref("network.trr.uri");
  });

  await BrowserTestUtils.withNewTab("about:networking#dns", async function(
    browser
  ) {
    ok(!browser.isRemoteBrowser, "Browser should not be remote.");
    await ContentTask.spawn(browser, null, async function() {
      let url_tbody = content.document.getElementById("dns_trr_url");
      info(url_tbody);
      is(
        url_tbody.children[0].children[0].textContent,
        "https://mozilla.cloudflare-dns.com/dns-query"
      );
      is(url_tbody.children[0].children[1].textContent, "0");
    });
  });

  Services.prefs.setCharPref("network.trr.uri", "https://localhost/testytest");
  Services.prefs.setIntPref("network.trr.mode", 2);
  await BrowserTestUtils.withNewTab("about:networking#dns", async function(
    browser
  ) {
    ok(!browser.isRemoteBrowser, "Browser should not be remote.");
    await ContentTask.spawn(browser, null, async function() {
      let url_tbody = content.document.getElementById("dns_trr_url");
      info(url_tbody);
      is(
        url_tbody.children[0].children[0].textContent,
        "https://localhost/testytest"
      );
      is(url_tbody.children[0].children[1].textContent, "2");
    });
  });
});