diff options
author | Matt A. Tobin <email@mattatobin.com> | 2018-02-03 06:00:38 -0500 |
---|---|---|
committer | Matt A. Tobin <email@mattatobin.com> | 2018-02-03 06:00:38 -0500 |
commit | 8148615da179fdd60f19018e13b4e94b95609cc6 (patch) | |
tree | 771fccdd99fa3adf35fdd2c81d8197b415a89b91 /browser/components/sessionstore/test/browser_394759_purge.js | |
parent | 494802c1be7888025b95260d23db187467d2b9dd (diff) | |
download | UXP-8148615da179fdd60f19018e13b4e94b95609cc6.tar UXP-8148615da179fdd60f19018e13b4e94b95609cc6.tar.gz UXP-8148615da179fdd60f19018e13b4e94b95609cc6.tar.lz UXP-8148615da179fdd60f19018e13b4e94b95609cc6.tar.xz UXP-8148615da179fdd60f19018e13b4e94b95609cc6.zip |
Remove browser tests - Part 1: The Tests (except for experiments)
Diffstat (limited to 'browser/components/sessionstore/test/browser_394759_purge.js')
-rw-r--r-- | browser/components/sessionstore/test/browser_394759_purge.js | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/browser/components/sessionstore/test/browser_394759_purge.js b/browser/components/sessionstore/test/browser_394759_purge.js deleted file mode 100644 index 75144aba1..000000000 --- a/browser/components/sessionstore/test/browser_394759_purge.js +++ /dev/null @@ -1,130 +0,0 @@ -/* 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/. */ - -Components.utils.import("resource://gre/modules/ForgetAboutSite.jsm"); - -function waitForClearHistory(aCallback) { - let observer = { - observe: function(aSubject, aTopic, aData) { - Services.obs.removeObserver(this, "browser:purge-domain-data"); - setTimeout(aCallback, 0); - } - }; - Services.obs.addObserver(observer, "browser:purge-domain-data", false); -} - -function test() { - waitForExplicitFinish(); - // utility functions - function countClosedTabsByTitle(aClosedTabList, aTitle) { - return aClosedTabList.filter(aData => aData.title == aTitle).length; - } - - function countOpenTabsByTitle(aOpenTabList, aTitle) { - return aOpenTabList.filter(aData => aData.entries.some(aEntry => aEntry.title == aTitle)).length; - } - - // backup old state - let oldState = ss.getBrowserState(); - let oldState_wins = JSON.parse(oldState).windows.length; - if (oldState_wins != 1) - ok(false, "oldState in test_purge has " + oldState_wins + " windows instead of 1"); - - // create a new state for testing - const REMEMBER = Date.now(), FORGET = Math.random(); - let testState = { - windows: [ { tabs: [{ entries: [{ url: "http://example.com/" }] }], selected: 1 } ], - _closedWindows : [ - // _closedWindows[0] - { - tabs: [ - { entries: [{ url: "http://example.com/", title: REMEMBER }] }, - { entries: [{ url: "http://mozilla.org/", title: FORGET }] } - ], - selected: 2, - title: "mozilla.org", - _closedTabs: [] - }, - // _closedWindows[1] - { - tabs: [ - { entries: [{ url: "http://mozilla.org/", title: FORGET }] }, - { entries: [{ url: "http://example.com/", title: REMEMBER }] }, - { entries: [{ url: "http://example.com/", title: REMEMBER }] }, - { entries: [{ url: "http://mozilla.org/", title: FORGET }] }, - { entries: [{ url: "http://example.com/", title: REMEMBER }] } - ], - selected: 5, - _closedTabs: [] - }, - // _closedWindows[2] - { - tabs: [ - { entries: [{ url: "http://example.com/", title: REMEMBER }] } - ], - selected: 1, - _closedTabs: [ - { - state: { - entries: [ - { url: "http://mozilla.org/", title: FORGET }, - { url: "http://mozilla.org/again", title: "doesn't matter" } - ] - }, - pos: 1, - title: FORGET - }, - { - state: { - entries: [ - { url: "http://example.com", title: REMEMBER } - ] - }, - title: REMEMBER - } - ] - } - ] - }; - - // set browser to test state - ss.setBrowserState(JSON.stringify(testState)); - - // purge domain & check that we purged correctly for closed windows - ForgetAboutSite.removeDataFromDomain("mozilla.org"); - waitForClearHistory(function() { - let closedWindowData = JSON.parse(ss.getClosedWindowData()); - - // First set of tests for _closedWindows[0] - tests basics - let win = closedWindowData[0]; - is(win.tabs.length, 1, "1 tab was removed"); - is(countOpenTabsByTitle(win.tabs, FORGET), 0, - "The correct tab was removed"); - is(countOpenTabsByTitle(win.tabs, REMEMBER), 1, - "The correct tab was remembered"); - is(win.selected, 1, "Selected tab has changed"); - is(win.title, REMEMBER, "The window title was correctly updated"); - - // Test more complicated case - win = closedWindowData[1]; - is(win.tabs.length, 3, "2 tabs were removed"); - is(countOpenTabsByTitle(win.tabs, FORGET), 0, - "The correct tabs were removed"); - is(countOpenTabsByTitle(win.tabs, REMEMBER), 3, - "The correct tabs were remembered"); - is(win.selected, 3, "Selected tab has changed"); - is(win.title, REMEMBER, "The window title was correctly updated"); - - // Tests handling of _closedTabs - win = closedWindowData[2]; - is(countClosedTabsByTitle(win._closedTabs, REMEMBER), 1, - "The correct number of tabs were removed, and the correct ones"); - is(countClosedTabsByTitle(win._closedTabs, FORGET), 0, - "All tabs to be forgotten were indeed removed"); - - // restore pre-test state - ss.setBrowserState(oldState); - finish(); - }); -} |