Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
4 /**
5 * This file tests PlacesUtils.asyncGetBookmarkIds method.
6 */
8 const TEST_URL = "http://www.example.com/";
10 [
12 function test_no_bookmark() {
13 PlacesUtils.asyncGetBookmarkIds(TEST_URL, (aItemIds, aURI) => {
14 do_check_eq(aItemIds.length, 0);
15 do_check_eq(aURI, TEST_URL);
16 run_next_test();
17 });
18 },
20 function test_one_bookmark_nsIURI() {
21 let uri = NetUtil.newURI(TEST_URL);
22 let itemId = PlacesUtils.bookmarks.insertBookmark(
23 PlacesUtils.unfiledBookmarksFolderId, uri, "test",
24 PlacesUtils.bookmarks.DEFAULT_INDEX
25 );
26 PlacesUtils.asyncGetBookmarkIds(uri, (aItemIds, aURI) => {
27 do_check_eq(aItemIds.length, 1);
28 do_check_eq(aItemIds[0], itemId);
29 do_check_true(aURI.equals(uri));
30 PlacesUtils.bookmarks.removeItem(itemId);
31 run_next_test();
32 });
33 },
35 function test_one_bookmark_spec() {
36 let uri = NetUtil.newURI(TEST_URL);
37 let itemId = PlacesUtils.bookmarks.insertBookmark(
38 PlacesUtils.unfiledBookmarksFolderId, uri, "test",
39 PlacesUtils.bookmarks.DEFAULT_INDEX
40 );
41 PlacesUtils.asyncGetBookmarkIds(TEST_URL, (aItemIds, aURI) => {
42 do_check_eq(aItemIds.length, 1);
43 do_check_eq(aItemIds[0], itemId);
44 do_check_eq(aURI, TEST_URL);
45 PlacesUtils.bookmarks.removeItem(itemId);
46 run_next_test();
47 });
48 },
50 function test_multiple_bookmarks() {
51 let uri = NetUtil.newURI(TEST_URL);
52 let itemIds = [];
53 itemIds.push(PlacesUtils.bookmarks.insertBookmark(
54 PlacesUtils.unfiledBookmarksFolderId, uri, "test",
55 PlacesUtils.bookmarks.DEFAULT_INDEX
56 ));
57 itemIds.push(PlacesUtils.bookmarks.insertBookmark(
58 PlacesUtils.unfiledBookmarksFolderId, uri, "test",
59 PlacesUtils.bookmarks.DEFAULT_INDEX
60 ));
61 PlacesUtils.asyncGetBookmarkIds(uri, (aItemIds, aURI) => {
62 do_check_eq(aItemIds.length, 2);
63 do_check_true(do_compare_arrays(itemIds, aItemIds));
64 do_check_true(aURI.equals(uri));
65 itemIds.forEach(PlacesUtils.bookmarks.removeItem);
66 run_next_test();
67 });
68 },
70 function test_cancel() {
71 let pending = PlacesUtils.asyncGetBookmarkIds(TEST_URL, (aItemIds, aURI) => {
72 do_throw("A canceled pending statement should not be invoked");
73 });
74 pending.cancel();
75 PlacesUtils.asyncGetBookmarkIds(TEST_URL, (aItemIds, aURI) => {
76 do_check_eq(aItemIds.length, 0);
77 do_check_eq(aURI, TEST_URL);
78 run_next_test();
79 });
80 },
82 ].forEach(add_test);
84 function run_test() {
85 run_next_test();
86 }