summaryrefslogtreecommitdiffstats
path: root/toolkit/components/places/tests/bookmarks/test_bookmarkstree_cache.js
blob: f5cf34641a5b5a0ef403cb42cd534ce83473879d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

// Bug 1192692 - promiseBookmarksTree caches items without adding observers to
// invalidate the cache.
add_task(function* boookmarks_tree_cache() {
  // Note that for this test to be effective, it needs to use the "old" sync
  // bookmarks methods - using, eg, PlacesUtils.bookmarks.insert() doesn't
  // demonstrate the problem as it indirectly arranges for the observers to
  // be added.
  let id = PlacesUtils.bookmarks.insertBookmark(PlacesUtils.unfiledBookmarksFolderId,
                                                uri("http://example.com"),
                                                PlacesUtils.bookmarks.DEFAULT_INDEX,
                                                "A title");
  yield PlacesUtils.promiseBookmarksTree();

  PlacesUtils.bookmarks.removeItem(id);

  yield Assert.rejects(PlacesUtils.promiseItemGuid(id));
});