summaryrefslogtreecommitdiffstats
path: root/devtools/client/netmonitor/test/browser_net_prefs-and-l10n.js
blob: e73f94d6d35032d2b5170551e2e42974716f22a5 (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
50
51
52
53
54
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

/**
 * Tests if the preferences and localization objects work correctly.
 */

add_task(function* () {
  let { L10N } = require("devtools/client/netmonitor/l10n");

  let { monitor } = yield initNetMonitor(SIMPLE_URL);
  info("Starting test... ");

  ok(monitor.panelWin.Prefs,
    "Should have a preferences object available on the panel window.");

  testL10N();
  testPrefs();

  return teardown(monitor);

  function testL10N() {
    is(typeof L10N.getStr("netmonitor.security.enabled"), "string",
      "The getStr() method didn't return a valid string.");
    is(typeof L10N.getFormatStr("networkMenu.totalMS", "foo"), "string",
      "The getFormatStr() method didn't return a valid string.");
  }

  function testPrefs() {
    let { Prefs } = monitor.panelWin;

    is(Prefs.networkDetailsWidth,
      Services.prefs.getIntPref("devtools.netmonitor.panes-network-details-width"),
      "Getting a pref should work correctly.");

    let previousValue = Prefs.networkDetailsWidth;
    let bogusValue = ~~(Math.random() * 100);
    Prefs.networkDetailsWidth = bogusValue;
    is(Prefs.networkDetailsWidth,
      Services.prefs.getIntPref("devtools.netmonitor.panes-network-details-width"),
      "Getting a pref after it has been modified should work correctly.");
    is(Prefs.networkDetailsWidth, bogusValue,
      "The pref wasn't updated correctly in the preferences object.");

    Prefs.networkDetailsWidth = previousValue;
    is(Prefs.networkDetailsWidth,
      Services.prefs.getIntPref("devtools.netmonitor.panes-network-details-width"),
      "Getting a pref after it has been modified again should work correctly.");
    is(Prefs.networkDetailsWidth, previousValue,
      "The pref wasn't updated correctly again in the preferences object.");
  }
});