diff options
Diffstat (limited to 'browser/components/places/tests/unit/test_browserGlue_smartBookmarks.js')
-rw-r--r-- | browser/components/places/tests/unit/test_browserGlue_smartBookmarks.js | 285 |
1 files changed, 0 insertions, 285 deletions
diff --git a/browser/components/places/tests/unit/test_browserGlue_smartBookmarks.js b/browser/components/places/tests/unit/test_browserGlue_smartBookmarks.js deleted file mode 100644 index 6ecaec4fe..000000000 --- a/browser/components/places/tests/unit/test_browserGlue_smartBookmarks.js +++ /dev/null @@ -1,285 +0,0 @@ -/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ -/* vim:set ts=2 sw=2 sts=2 et: */ -/* 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/. */ - -/** - * Tests that nsBrowserGlue is correctly interpreting the preferences settable - * by the user or by other components. - */ - -const PREF_SMART_BOOKMARKS_VERSION = "browser.places.smartBookmarksVersion"; -const PREF_AUTO_EXPORT_HTML = "browser.bookmarks.autoExportHTML"; -const PREF_IMPORT_BOOKMARKS_HTML = "browser.places.importBookmarksHTML"; -const PREF_RESTORE_DEFAULT_BOOKMARKS = "browser.bookmarks.restore_default_bookmarks"; - -function run_test() { - remove_bookmarks_html(); - remove_all_JSON_backups(); - run_next_test(); -} - -do_register_cleanup(() => PlacesUtils.bookmarks.eraseEverything()); - -function countFolderChildren(aFolderItemId) { - let rootNode = PlacesUtils.getFolderContents(aFolderItemId).root; - let cc = rootNode.childCount; - // Dump contents. - for (let i = 0; i < cc ; i++) { - let node = rootNode.getChild(i); - let title = PlacesUtils.nodeIsSeparator(node) ? "---" : node.title; - print("Found child(" + i + "): " + title); - } - rootNode.containerOpen = false; - return cc; -} - -add_task(function* setup() { - // Initialize browserGlue, but remove it's listener to places-init-complete. - Cc["@mozilla.org/browser/browserglue;1"].getService(Ci.nsIObserver); - - // Initialize Places. - PlacesUtils.history; - - // Wait for Places init notification. - yield promiseTopicObserved("places-browser-init-complete"); - - // Ensure preferences status. - Assert.ok(!Services.prefs.getBoolPref(PREF_AUTO_EXPORT_HTML)); - Assert.ok(!Services.prefs.getBoolPref(PREF_RESTORE_DEFAULT_BOOKMARKS)); - Assert.throws(() => Services.prefs.getBoolPref(PREF_IMPORT_BOOKMARKS_HTML)); -}); - -add_task(function* test_version_0() { - do_print("All smart bookmarks are created if smart bookmarks version is 0."); - - // Sanity check: we should have default bookmark. - Assert.ok(yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.toolbarGuid, - index: 0 - })); - - Assert.ok(yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: 0 - })); - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 0); - - yield rebuildSmartBookmarks(); - - // Count items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); - -add_task(function* test_version_change() { - do_print("An existing smart bookmark is replaced when version changes."); - - // Sanity check: we have a smart bookmark on the toolbar. - let bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.toolbarGuid, - index: 0 - }); - yield checkItemHasAnnotation(bm.guid, SMART_BOOKMARKS_ANNO); - - // Change its title. - yield PlacesUtils.bookmarks.update({guid: bm.guid, title: "new title"}); - bm = yield PlacesUtils.bookmarks.fetch({guid: bm.guid}); - Assert.equal(bm.title, "new title"); - - // Sanity check items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 1); - - yield rebuildSmartBookmarks(); - - // Count items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Check smart bookmark has been replaced, itemId has changed. - bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.toolbarGuid, - index: 0 - }); - yield checkItemHasAnnotation(bm.guid, SMART_BOOKMARKS_ANNO); - Assert.notEqual(bm.title, "new title"); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); - -add_task(function* test_version_change_pos() { - do_print("bookmarks position is retained when version changes."); - - // Sanity check items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - let bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: 0 - }); - yield checkItemHasAnnotation(bm.guid, SMART_BOOKMARKS_ANNO); - let firstItemTitle = bm.title; - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 1); - - yield rebuildSmartBookmarks(); - - // Count items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Check smart bookmarks are still in correct position. - bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: 0 - }); - yield checkItemHasAnnotation(bm.guid, SMART_BOOKMARKS_ANNO); - Assert.equal(bm.title, firstItemTitle); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); - -add_task(function* test_version_change_pos_moved() { - do_print("moved bookmarks position is retained when version changes."); - - // Sanity check items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - let bm1 = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: 0 - }); - yield checkItemHasAnnotation(bm1.guid, SMART_BOOKMARKS_ANNO); - let firstItemTitle = bm1.title; - - // Move the first smart bookmark to the end of the menu. - yield PlacesUtils.bookmarks.update({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - guid: bm1.guid, - index: PlacesUtils.bookmarks.DEFAULT_INDEX - }); - - let bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: PlacesUtils.bookmarks.DEFAULT_INDEX - }); - Assert.equal(bm.guid, bm1.guid); - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 1); - - yield rebuildSmartBookmarks(); - - // Count items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - bm1 = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: PlacesUtils.bookmarks.DEFAULT_INDEX - }); - yield checkItemHasAnnotation(bm1.guid, SMART_BOOKMARKS_ANNO); - Assert.equal(bm1.title, firstItemTitle); - - // Move back the smart bookmark to the original position. - yield PlacesUtils.bookmarks.update({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - guid: bm1.guid, - index: 1 - }); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); - -add_task(function* test_recreation() { - do_print("An explicitly removed smart bookmark should not be recreated."); - - // Remove toolbar's smart bookmarks - let bm = yield PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.toolbarGuid, - index: 0 - }); - yield PlacesUtils.bookmarks.remove(bm.guid); - - // Sanity check items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 1); - - yield rebuildSmartBookmarks(); - - // Count items. - // We should not have recreated the smart bookmark on toolbar. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); - -add_task(function* test_recreation_version_0() { - do_print("Even if a smart bookmark has been removed recreate it if version is 0."); - - // Sanity check items. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Set preferences. - Services.prefs.setIntPref(PREF_SMART_BOOKMARKS_VERSION, 0); - - yield rebuildSmartBookmarks(); - - // Count items. - // We should not have recreated the smart bookmark on toolbar. - Assert.equal(countFolderChildren(PlacesUtils.toolbarFolderId), - SMART_BOOKMARKS_ON_TOOLBAR + DEFAULT_BOOKMARKS_ON_TOOLBAR); - Assert.equal(countFolderChildren(PlacesUtils.bookmarksMenuFolderId), - SMART_BOOKMARKS_ON_MENU + DEFAULT_BOOKMARKS_ON_MENU); - - // Check version has been updated. - Assert.equal(Services.prefs.getIntPref(PREF_SMART_BOOKMARKS_VERSION), - SMART_BOOKMARKS_VERSION); -}); |