mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-10-22 02:25:05 +00:00
58 lines
2.2 KiB
JavaScript
58 lines
2.2 KiB
JavaScript
/* 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/. */
|
|
|
|
function run_test() {
|
|
/**
|
|
* Requests information to the service, so that bookmark's data is cached.
|
|
* @param aItemId
|
|
* Id of the bookmark to be cached.
|
|
*/
|
|
function forceBookmarkCaching(aItemId) {
|
|
let parent = PlacesUtils.bookmarks.getFolderIdForItem(aItemId);
|
|
PlacesUtils.bookmarks.getFolderIdForItem(parent);
|
|
}
|
|
|
|
let observer = {
|
|
onBeginUpdateBatch: () => forceBookmarkCaching(itemId1),
|
|
onEndUpdateBatch: () => forceBookmarkCaching(itemId1),
|
|
onItemAdded: forceBookmarkCaching,
|
|
onItemChanged: forceBookmarkCaching,
|
|
onItemMoved: forceBookmarkCaching,
|
|
onItemRemoved: function (id) {
|
|
try {
|
|
forceBookmarkCaching(id);
|
|
do_throw("trying to fetch a removed bookmark should throw");
|
|
} catch (ex) {}
|
|
},
|
|
onItemVisited: forceBookmarkCaching,
|
|
QueryInterface: XPCOMUtils.generateQI([Ci.nsINavBookmarkObserver])
|
|
};
|
|
PlacesUtils.bookmarks.addObserver(observer, false);
|
|
|
|
let folder1 = PlacesUtils.bookmarks
|
|
.createFolder(PlacesUtils.bookmarksMenuFolderId,
|
|
"Folder1",
|
|
PlacesUtils.bookmarks.DEFAULT_INDEX);
|
|
let folder2 = PlacesUtils.bookmarks
|
|
.createFolder(folder1,
|
|
"Folder2",
|
|
PlacesUtils.bookmarks.DEFAULT_INDEX);
|
|
let itemId = PlacesUtils.bookmarks
|
|
.insertBookmark(folder2,
|
|
NetUtil.newURI("http://mozilla.org/"),
|
|
PlacesUtils.bookmarks.DEFAULT_INDEX,
|
|
"Mozilla");
|
|
|
|
PlacesUtils.bookmarks.removeFolderChildren(folder1);
|
|
|
|
// Check title is correctly reported.
|
|
do_check_eq(PlacesUtils.bookmarks.getItemTitle(folder1), "Folder1");
|
|
try {
|
|
PlacesUtils.bookmarks.getItemTitle(folder2);
|
|
do_throw("trying to fetch a removed bookmark should throw");
|
|
} catch (ex) {}
|
|
|
|
PlacesUtils.bookmarks.removeObserver(observer, false);
|
|
}
|