summaryrefslogtreecommitdiffstats
path: root/toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js')
-rw-r--r--toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js514
1 files changed, 0 insertions, 514 deletions
diff --git a/toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js b/toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js
deleted file mode 100644
index 5136591ba..000000000
--- a/toolkit/components/places/tests/unit/test_mozIAsyncLivemarks.js
+++ /dev/null
@@ -1,514 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- http://creativecommons.org/publicdomain/zero/1.0/ */
-
-// Tests functionality of the mozIAsyncLivemarks interface.
-
-const FEED_URI = NetUtil.newURI("http://feed.rss/");
-const SITE_URI = NetUtil.newURI("http://site.org/");
-
-// This test must be the first one, since it's testing the cache.
-add_task(function* test_livemark_cache() {
- // Add a livemark through other APIs.
- let folder = yield PlacesUtils.bookmarks.insert({
- type: PlacesUtils.bookmarks.TYPE_FOLDER,
- title: "test",
- parentGuid: PlacesUtils.bookmarks.unfiledGuid
- });
- let id = yield PlacesUtils.promiseItemId(folder.guid);
- PlacesUtils.annotations
- .setItemAnnotation(id, PlacesUtils.LMANNO_FEEDURI,
- "http://example.com/feed",
- 0, PlacesUtils.annotations.EXPIRE_NEVER);
- PlacesUtils.annotations
- .setItemAnnotation(id, PlacesUtils.LMANNO_SITEURI,
- "http://example.com/site",
- 0, PlacesUtils.annotations.EXPIRE_NEVER);
-
- let livemark = yield PlacesUtils.livemarks.getLivemark({ guid: folder.guid });
- Assert.equal(folder.guid, livemark.guid);
- Assert.equal(folder.dateAdded * 1000, livemark.dateAdded);
- Assert.equal(folder.parentGuid, livemark.parentGuid);
- Assert.equal(folder.index, livemark.index);
- Assert.equal(folder.title, livemark.title);
- Assert.equal(id, livemark.id);
- Assert.equal(PlacesUtils.unfiledBookmarksFolderId, livemark.parentId);
- Assert.equal("http://example.com/feed", livemark.feedURI.spec);
- Assert.equal("http://example.com/site", livemark.siteURI.spec);
-
- yield PlacesUtils.livemarks.removeLivemark(livemark);
-});
-
-add_task(function* test_addLivemark_noArguments_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark();
- do_throw("Invoking addLivemark with no arguments should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_XPC_NOT_ENOUGH_ARGS);
- }
-});
-
-add_task(function* test_addLivemark_emptyObject_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark({});
- do_throw("Invoking addLivemark with empty object should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_badParentId_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark({ parentId: "test" });
- do_throw("Invoking addLivemark with a bad parent id should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_invalidParentId_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark({ parentId: -2 });
- do_throw("Invoking addLivemark with an invalid parent id should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_noIndex_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark({
- parentId: PlacesUtils.unfiledBookmarksFolderId });
- do_throw("Invoking addLivemark with no index should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_badIndex_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentId: PlacesUtils.unfiledBookmarksFolderId
- , index: "test" });
- do_throw("Invoking addLivemark with a bad index should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_invalidIndex_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentId: PlacesUtils.unfiledBookmarksFolderId
- , index: -2
- });
- do_throw("Invoking addLivemark with an invalid index should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_noFeedURI_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentGuid: PlacesUtils.bookmarks.unfiledGuid });
- do_throw("Invoking addLivemark with no feedURI should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_badFeedURI_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: "test" });
- do_throw("Invoking addLivemark with a bad feedURI should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_badSiteURI_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , siteURI: "test" });
- do_throw("Invoking addLivemark with a bad siteURI should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_badGuid_throws() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { parentGuid: PlacesUtils.bookmarks.unfileGuid
- , feedURI: FEED_URI
- , guid: "123456" });
- do_throw("Invoking addLivemark with a bad guid should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_parentId_succeeds() {
- let onItemAddedCalled = false;
- PlacesUtils.bookmarks.addObserver({
- __proto__: NavBookmarkObserver.prototype,
- onItemAdded: function onItemAdded(aItemId, aParentId, aIndex, aItemType,
- aURI, aTitle)
- {
- onItemAddedCalled = true;
- PlacesUtils.bookmarks.removeObserver(this);
- do_check_eq(aParentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_eq(aIndex, 0);
- do_check_eq(aItemType, Ci.nsINavBookmarksService.TYPE_FOLDER);
- do_check_eq(aTitle, "test");
- }
- }, false);
-
- yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentId: PlacesUtils.unfiledBookmarksFolderId
- , feedURI: FEED_URI });
- do_check_true(onItemAddedCalled);
-});
-
-
-add_task(function* test_addLivemark_noSiteURI_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
- do_check_true(livemark.id > 0);
- do_check_valid_places_guid(livemark.guid);
- do_check_eq(livemark.title, "test");
- do_check_eq(livemark.parentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_eq(livemark.parentGuid, PlacesUtils.bookmarks.unfiledGuid);
- do_check_true(livemark.feedURI.equals(FEED_URI));
- do_check_eq(livemark.siteURI, null);
- do_check_true(livemark.lastModified > 0);
- do_check_true(is_time_ordered(livemark.dateAdded, livemark.lastModified));
-
- let bookmark = yield PlacesUtils.bookmarks.fetch(livemark.guid);
- do_check_eq(livemark.index, bookmark.index);
- do_check_eq(livemark.dateAdded, bookmark.dateAdded * 1000);
-});
-
-add_task(function* test_addLivemark_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , siteURI: SITE_URI
- });
-
- do_check_true(livemark.id > 0);
- do_check_valid_places_guid(livemark.guid);
- do_check_eq(livemark.title, "test");
- do_check_eq(livemark.parentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_eq(livemark.parentGuid, PlacesUtils.bookmarks.unfiledGuid);
- do_check_true(livemark.feedURI.equals(FEED_URI));
- do_check_true(livemark.siteURI.equals(SITE_URI));
- do_check_true(PlacesUtils.annotations
- .itemHasAnnotation(livemark.id,
- PlacesUtils.LMANNO_FEEDURI));
- do_check_true(PlacesUtils.annotations
- .itemHasAnnotation(livemark.id,
- PlacesUtils.LMANNO_SITEURI));
-});
-
-add_task(function* test_addLivemark_bogusid_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { id: 100 // Should be ignored.
- , title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , siteURI: SITE_URI
- });
- do_check_true(livemark.id > 0);
- do_check_neq(livemark.id, 100);
-});
-
-add_task(function* test_addLivemark_bogusParentId_fails() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentId: 187
- , feedURI: FEED_URI
- });
- do_throw("Adding a livemark with a bogus parent should fail");
- } catch (ex) {}
-});
-
-add_task(function* test_addLivemark_bogusParentGuid_fails() {
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: "123456789012"
- , feedURI: FEED_URI
- });
- do_throw("Adding a livemark with a bogus parent should fail");
- } catch (ex) {}
-})
-
-add_task(function* test_addLivemark_intoLivemark_fails() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
-
- try {
- yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: livemark.guid
- , feedURI: FEED_URI
- });
- do_throw("Adding a livemark into a livemark should fail");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_addLivemark_forceGuid_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , guid: "1234567890AB"
- });
- do_check_eq(livemark.guid, "1234567890AB");
- do_check_guid_for_bookmark(livemark.id, "1234567890AB");
-});
-
-add_task(function* test_addLivemark_dateAdded_succeeds() {
- let dateAdded = new Date("2013-03-01T01:10:00") * 1000;
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , dateAdded
- });
- do_check_eq(livemark.dateAdded, dateAdded);
-});
-
-add_task(function* test_addLivemark_lastModified_succeeds() {
- let now = Date.now() * 1000;
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , lastModified: now
- });
- do_check_eq(livemark.dateAdded, now);
- do_check_eq(livemark.lastModified, now);
-});
-
-add_task(function* test_removeLivemark_emptyObject_throws() {
- try {
- yield PlacesUtils.livemarks.removeLivemark({});
- do_throw("Invoking removeLivemark with empty object should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_removeLivemark_noValidId_throws() {
- try {
- yield PlacesUtils.livemarks.removeLivemark({ id: -10, guid: "test"});
- do_throw("Invoking removeLivemark with no valid id should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_removeLivemark_nonExistent_fails() {
- try {
- yield PlacesUtils.livemarks.removeLivemark({ id: 1337 });
- do_throw("Removing a non-existent livemark should fail");
- }
- catch (ex) {
- }
-});
-
-add_task(function* test_removeLivemark_guid_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , guid: "234567890ABC"
- });
-
- do_check_eq(livemark.guid, "234567890ABC");
-
- yield PlacesUtils.livemarks.removeLivemark({
- id: 789, guid: "234567890ABC"
- });
-
- do_check_eq((yield PlacesUtils.bookmarks.fetch("234567890ABC")), null);
-});
-
-add_task(function* test_removeLivemark_id_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
-
- yield PlacesUtils.livemarks.removeLivemark({ id: livemark.id });
-
- do_check_eq((yield PlacesUtils.bookmarks.fetch("234567890ABC")), null);
-});
-
-add_task(function* test_getLivemark_emptyObject_throws() {
- try {
- yield PlacesUtils.livemarks.getLivemark({});
- do_throw("Invoking getLivemark with empty object should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_getLivemark_noValidId_throws() {
- try {
- yield PlacesUtils.livemarks.getLivemark({ id: -10, guid: "test"});
- do_throw("Invoking getLivemark with no valid id should throw");
- } catch (ex) {
- do_check_eq(ex.result, Cr.NS_ERROR_INVALID_ARG);
- }
-});
-
-add_task(function* test_getLivemark_nonExistentId_fails() {
- try {
- yield PlacesUtils.livemarks.getLivemark({ id: 1234 });
- do_throw("getLivemark for a non existent id should fail");
- } catch (ex) {}
-});
-
-add_task(function* test_getLivemark_nonExistentGUID_fails() {
- try {
- yield PlacesUtils.livemarks.getLivemark({ guid: "34567890ABCD" });
- do_throw("getLivemark for a non-existent guid should fail");
- } catch (ex) {}
-});
-
-add_task(function* test_getLivemark_guid_succeeds() {
- yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- , guid: "34567890ABCD" });
-
- // invalid id to check the guid wins.
- let livemark =
- yield PlacesUtils.livemarks.getLivemark({ id: 789, guid: "34567890ABCD" });
-
- do_check_eq(livemark.title, "test");
- do_check_eq(livemark.parentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_eq(livemark.parentGuid, PlacesUtils.bookmarks.unfiledGuid);
- do_check_true(livemark.feedURI.equals(FEED_URI));
- do_check_eq(livemark.siteURI, null);
- do_check_eq(livemark.guid, "34567890ABCD");
-
- let bookmark = yield PlacesUtils.bookmarks.fetch("34567890ABCD");
- do_check_eq(livemark.index, bookmark.index);
-});
-
-add_task(function* test_getLivemark_id_succeeds() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
-
- livemark = yield PlacesUtils.livemarks.getLivemark({ id: livemark.id });
-
- do_check_eq(livemark.title, "test");
- do_check_eq(livemark.parentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_eq(livemark.parentGuid, PlacesUtils.bookmarks.unfiledGuid);
- do_check_true(livemark.feedURI.equals(FEED_URI));
- do_check_eq(livemark.siteURI, null);
- do_check_guid_for_bookmark(livemark.id, livemark.guid);
-
- let bookmark = yield PlacesUtils.bookmarks.fetch(livemark.guid);
- do_check_eq(livemark.index, bookmark.index);
-});
-
-add_task(function* test_getLivemark_removeItem_contention() {
- // do not yield.
- PlacesUtils.livemarks.addLivemark({ title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- }).catch(() => { /* swallow errors*/ });
- yield PlacesUtils.bookmarks.eraseEverything();
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
-
- livemark = yield PlacesUtils.livemarks.getLivemark({ guid: livemark.guid });
-
- do_check_eq(livemark.title, "test");
- do_check_eq(livemark.parentId, PlacesUtils.unfiledBookmarksFolderId);
- do_check_true(livemark.feedURI.equals(FEED_URI));
- do_check_eq(livemark.siteURI, null);
- do_check_guid_for_bookmark(livemark.id, livemark.guid);
-});
-
-add_task(function* test_title_change() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI
- });
-
- yield PlacesUtils.bookmarks.update({ guid: livemark.guid,
- title: "test2" });
- // Poll for the title change.
- while (true) {
- let lm = yield PlacesUtils.livemarks.getLivemark({ guid: livemark.guid });
- if (lm.title == "test2")
- break;
- yield new Promise(resolve => do_timeout(resolve, 100));
- }
-});
-
-add_task(function* test_livemark_move() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI } );
-
- yield PlacesUtils.bookmarks.update({ guid: livemark.guid,
- parentGuid: PlacesUtils.bookmarks.toolbarGuid,
- index: PlacesUtils.bookmarks.DEFAULT_INDEX });
- // Poll for the parent change.
- while (true) {
- let lm = yield PlacesUtils.livemarks.getLivemark({ guid: livemark.guid });
- if (lm.parentGuid == PlacesUtils.bookmarks.toolbarGuid)
- break;
- yield new Promise(resolve => do_timeout(resolve, 100));
- }
-});
-
-add_task(function* test_livemark_removed() {
- let livemark = yield PlacesUtils.livemarks.addLivemark(
- { title: "test"
- , parentGuid: PlacesUtils.bookmarks.unfiledGuid
- , feedURI: FEED_URI } );
-
- yield PlacesUtils.bookmarks.remove(livemark.guid);
- // Poll for the livemark removal.
- while (true) {
- try {
- yield PlacesUtils.livemarks.getLivemark({ guid: livemark.guid });
- } catch (ex) {
- break;
- }
- yield new Promise(resolve => do_timeout(resolve, 100));
- }
-});