summaryrefslogtreecommitdiffstats
path: root/toolkit/components/places/tests/unit/test_384370.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/places/tests/unit/test_384370.js')
-rw-r--r--toolkit/components/places/tests/unit/test_384370.js173
1 files changed, 0 insertions, 173 deletions
diff --git a/toolkit/components/places/tests/unit/test_384370.js b/toolkit/components/places/tests/unit/test_384370.js
deleted file mode 100644
index ec6f43683..000000000
--- a/toolkit/components/places/tests/unit/test_384370.js
+++ /dev/null
@@ -1,173 +0,0 @@
-const LOAD_IN_SIDEBAR_ANNO = "bookmarkProperties/loadInSidebar";
-const DESCRIPTION_ANNO = "bookmarkProperties/description";
-
-var tagData = [
- { uri: uri("http://slint.us"), tags: ["indie", "kentucky", "music"] },
- { uri: uri("http://en.wikipedia.org/wiki/Diplodocus"), tags: ["dinosaur", "dj", "rad word"] }
-];
-
-var bookmarkData = [
- { uri: uri("http://slint.us"), title: "indie, kentucky, music" },
- { uri: uri("http://en.wikipedia.org/wiki/Diplodocus"), title: "dinosaur, dj, rad word" }
-];
-
-function run_test() {
- run_next_test();
-}
-
-/*
- HTML+FEATURES SUMMARY:
- - import legacy bookmarks
- - export as json, import, test (tests integrity of html > json)
- - export as html, import, test (tests integrity of json > html)
-
- BACKUP/RESTORE SUMMARY:
- - create a bookmark in each root
- - tag multiple URIs with multiple tags
- - export as json, import, test
-*/
-add_task(function* () {
- // Remove eventual bookmarks.exported.json.
- let jsonFile = OS.Path.join(OS.Constants.Path.profileDir, "bookmarks.exported.json");
- if ((yield OS.File.exists(jsonFile)))
- yield OS.File.remove(jsonFile);
-
- // Test importing a pre-Places canonical bookmarks file.
- // Note: we do not empty the db before this import to catch bugs like 380999
- let htmlFile = OS.Path.join(do_get_cwd().path, "bookmarks.preplaces.html");
- yield BookmarkHTMLUtils.importFromFile(htmlFile, true);
-
- // Populate the database.
- for (let { uri, tags } of tagData) {
- PlacesUtils.tagging.tagURI(uri, tags);
- }
- for (let { uri, title } of bookmarkData) {
- yield PlacesUtils.bookmarks.insert({ parentGuid: PlacesUtils.bookmarks.unfiledGuid,
- url: uri,
- title });
- }
- for (let { uri, title } of bookmarkData) {
- yield PlacesUtils.bookmarks.insert({ parentGuid: PlacesUtils.bookmarks.toolbarGuid,
- url: uri,
- title });
- }
-
- yield validate();
-
- // Test exporting a Places canonical json file.
- // 1. export to bookmarks.exported.json
- yield BookmarkJSONUtils.exportToFile(jsonFile);
- do_print("exported json");
-
- // 2. empty bookmarks db
- // 3. import bookmarks.exported.json
- yield BookmarkJSONUtils.importFromFile(jsonFile, true);
- do_print("imported json");
-
- // 4. run the test-suite
- yield validate();
- do_print("validated import");
-});
-
-function* validate() {
- yield testMenuBookmarks();
- yield testToolbarBookmarks();
- testUnfiledBookmarks();
- testTags();
- yield PlacesTestUtils.promiseAsyncUpdates();
-}
-
-// Tests a bookmarks datastore that has a set of bookmarks, etc
-// that flex each supported field and feature.
-function* testMenuBookmarks() {
- let root = PlacesUtils.getFolderContents(PlacesUtils.bookmarksMenuFolderId).root;
- Assert.equal(root.childCount, 3);
-
- let separatorNode = root.getChild(1);
- Assert.equal(separatorNode.type, separatorNode.RESULT_TYPE_SEPARATOR);
-
- let folderNode = root.getChild(2);
- Assert.equal(folderNode.type, folderNode.RESULT_TYPE_FOLDER);
- Assert.equal(folderNode.title, "test");
- let folder = yield PlacesUtils.bookmarks.fetch(folderNode.bookmarkGuid);
- Assert.equal(folder.dateAdded.getTime(), 1177541020000);
-
- Assert.equal(PlacesUtils.asQuery(folderNode).hasChildren, true);
-
- Assert.equal("folder test comment",
- PlacesUtils.annotations.getItemAnnotation(folderNode.itemId,
- DESCRIPTION_ANNO));
-
- // open test folder, and test the children
- folderNode.containerOpen = true;
- Assert.equal(folderNode.childCount, 1);
-
- let bookmarkNode = folderNode.getChild(0);
- Assert.equal("http://test/post", bookmarkNode.uri);
- Assert.equal("test post keyword", bookmarkNode.title);
- Assert.ok(PlacesUtils.annotations.itemHasAnnotation(bookmarkNode.itemId,
- LOAD_IN_SIDEBAR_ANNO));
- Assert.equal(bookmarkNode.dateAdded, 1177375336000000);
-
- let entry = yield PlacesUtils.keywords.fetch({ url: bookmarkNode.uri });
- Assert.equal("test", entry.keyword);
- Assert.equal("hidden1%3Dbar&text1%3D%25s", entry.postData);
-
- Assert.equal("ISO-8859-1",
- (yield PlacesUtils.getCharsetForURI(NetUtil.newURI(bookmarkNode.uri))));
- Assert.equal("item description",
- PlacesUtils.annotations.getItemAnnotation(bookmarkNode.itemId,
- DESCRIPTION_ANNO));
-
- folderNode.containerOpen = false;
- root.containerOpen = false;
-}
-
-function* testToolbarBookmarks() {
- let root = PlacesUtils.getFolderContents(PlacesUtils.toolbarFolderId).root;
-
- // child count (add 2 for pre-existing items)
- Assert.equal(root.childCount, bookmarkData.length + 2);
-
- let livemarkNode = root.getChild(1);
- Assert.equal("Latest Headlines", livemarkNode.title);
-
- let livemark = yield PlacesUtils.livemarks.getLivemark({ id: livemarkNode.itemId });
- Assert.equal("http://en-us.fxfeeds.mozilla.com/en-US/firefox/livebookmarks/",
- livemark.siteURI.spec);
- Assert.equal("http://en-us.fxfeeds.mozilla.com/en-US/firefox/headlines.xml",
- livemark.feedURI.spec);
-
- // test added bookmark data
- let bookmarkNode = root.getChild(2);
- Assert.equal(bookmarkNode.uri, bookmarkData[0].uri.spec);
- Assert.equal(bookmarkNode.title, bookmarkData[0].title);
- bookmarkNode = root.getChild(3);
- Assert.equal(bookmarkNode.uri, bookmarkData[1].uri.spec);
- Assert.equal(bookmarkNode.title, bookmarkData[1].title);
-
- root.containerOpen = false;
-}
-
-function testUnfiledBookmarks() {
- let root = PlacesUtils.getFolderContents(PlacesUtils.unfiledBookmarksFolderId).root;
- // child count (add 1 for pre-existing item)
- Assert.equal(root.childCount, bookmarkData.length + 1);
- for (let i = 1; i < root.childCount; ++i) {
- let child = root.getChild(i);
- Assert.equal(child.uri, bookmarkData[i - 1].uri.spec);
- Assert.equal(child.title, bookmarkData[i - 1].title);
- if (child.tags)
- Assert.equal(child.tags, bookmarkData[i - 1].title);
- }
- root.containerOpen = false;
-}
-
-function testTags() {
- for (let { uri, tags } of tagData) {
- do_print("Test tags for " + uri.spec + ": " + tags + "\n");
- let foundTags = PlacesUtils.tagging.getTagsForURI(uri);
- Assert.equal(foundTags.length, tags.length);
- Assert.ok(tags.every(tag => foundTags.includes(tag)));
- }
-}