summaryrefslogtreecommitdiffstats
path: root/toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js')
-rw-r--r--toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js70
1 files changed, 0 insertions, 70 deletions
diff --git a/toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js b/toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js
deleted file mode 100644
index 537974b38..000000000
--- a/toolkit/components/places/tests/bookmarks/test_removeFolderTransaction_reinsert.js
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * This test ensures that reinserting a folder within a transaction gives it
- * a different GUID, and passes the GUID to the observers.
- */
-
-add_task(function* test_removeFolderTransaction_reinsert() {
- let folder = yield PlacesUtils.bookmarks.insert({
- type: PlacesUtils.bookmarks.TYPE_FOLDER,
- parentGuid: PlacesUtils.bookmarks.menuGuid,
- title: "Test folder",
- });
- let folderId = yield PlacesUtils.promiseItemId(folder.guid);
- let fx = yield PlacesUtils.bookmarks.insert({
- parentGuid: folder.guid,
- title: "Get Firefox!",
- url: "http://getfirefox.com",
- });
- let fxId = yield PlacesUtils.promiseItemId(fx.guid);
- let tb = yield PlacesUtils.bookmarks.insert({
- parentGuid: folder.guid,
- title: "Get Thunderbird!",
- url: "http://getthunderbird.com",
- });
- let tbId = yield PlacesUtils.promiseItemId(tb.guid);
-
- let notifications = [];
- function checkNotifications(expected, message) {
- deepEqual(notifications, expected, message);
- notifications.length = 0;
- }
-
- let observer = {
- onItemAdded(itemId, parentId, index, type, uri, title, dateAdded, guid,
- parentGuid) {
- notifications.push(["onItemAdded", itemId, parentId, guid, parentGuid]);
- },
- onItemRemoved(itemId, parentId, index, type, uri, guid, parentGuid) {
- notifications.push(["onItemRemoved", itemId, parentId, guid, parentGuid]);
- },
- };
- PlacesUtils.bookmarks.addObserver(observer, false);
- PlacesUtils.registerShutdownFunction(function() {
- PlacesUtils.bookmarks.removeObserver(observer);
- });
-
- let transaction = PlacesUtils.bookmarks.getRemoveFolderTransaction(folderId);
- deepEqual(notifications, [], "We haven't executed the transaction yet");
-
- transaction.doTransaction();
- checkNotifications([
- ["onItemRemoved", tbId, folderId, tb.guid, folder.guid],
- ["onItemRemoved", fxId, folderId, fx.guid, folder.guid],
- ["onItemRemoved", folderId, PlacesUtils.bookmarksMenuFolderId, folder.guid,
- PlacesUtils.bookmarks.menuGuid],
- ], "Executing transaction should remove folder and its descendants");
-
- transaction.undoTransaction();
- // At this point, the restored folder has the same ID, but a different GUID.
- let newFolderGuid = yield PlacesUtils.promiseItemGuid(folderId);
- checkNotifications([
- ["onItemAdded", folderId, PlacesUtils.bookmarksMenuFolderId, newFolderGuid,
- PlacesUtils.bookmarks.menuGuid],
- ], "Undo should reinsert folder with same ID and different GUID");
-
- transaction.redoTransaction();
- checkNotifications([
- ["onItemRemoved", folderId, PlacesUtils.bookmarksMenuFolderId,
- newFolderGuid, PlacesUtils.bookmarks.menuGuid],
- ], "Redo should forward new GUID to observer");
-});