tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_browserGlue_migration_reset_tracking_table.js (1778B)


      1 /* Any copyright is dedicated to the Public Domain.
      2   http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 const LEVEL_1_TRACKING_TABLE =
      7  "moztest-track-simple,ads-track-digest256,social-track-digest256,analytics-track-digest256";
      8 const LEVEL_2_TRACKING_TABLE =
      9  LEVEL_1_TRACKING_TABLE + ",content-track-digest256";
     10 const CUSTOM_BLOCK_LIST_PREF =
     11  "browser.contentblocking.customBlockList.preferences.ui.enabled";
     12 const TRACKING_TABLE_PREF = "urlclassifier.trackingTable";
     13 const BROWSER_VERSION = 155;
     14 
     15 const gBrowserGlue = Cc["@mozilla.org/browser/browserglue;1"].getService(
     16  Ci.nsIObserver
     17 );
     18 
     19 add_setup(() => {
     20  registerCleanupFunction(() => {
     21    Services.prefs.clearUserPref("browser.migration.version");
     22    Services.prefs.clearUserPref(CUSTOM_BLOCK_LIST_PREF);
     23    Services.prefs.clearUserPref(TRACKING_TABLE_PREF);
     24  });
     25 });
     26 
     27 add_task(async function test_migration_reset_tracking_table() {
     28  // Set up user having level 2 tracking table
     29  Services.prefs.setBoolPref(CUSTOM_BLOCK_LIST_PREF, true);
     30  Services.prefs.setStringPref(TRACKING_TABLE_PREF, LEVEL_2_TRACKING_TABLE);
     31  Services.prefs.setIntPref("browser.migration.version", BROWSER_VERSION);
     32 
     33  // Simulate the migration process
     34  gBrowserGlue.observe(null, "browser-glue-test", "force-ui-migration");
     35 
     36  // Check that the migration has reset the tracking table to level 1 and customBlockList is set to false
     37  Assert.ok(
     38    !Services.prefs.getBoolPref(CUSTOM_BLOCK_LIST_PREF, false),
     39    "browser.contentblocking.customBlockList.preferences.ui.enabled pref should be false"
     40  );
     41  Assert.strictEqual(
     42    Services.prefs.getStringPref(TRACKING_TABLE_PREF),
     43    LEVEL_1_TRACKING_TABLE,
     44    LEVEL_1_TRACKING_TABLE,
     45    "urlclassifier.trackingTable pref should be reset to level 1"
     46  );
     47 });