45 lines
1.4 KiB
JavaScript
45 lines
1.4 KiB
JavaScript
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
|
/* vim:set ts=2 sw=2 sts=2 et: */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
// Get bookmark service
|
|
let bm = PlacesUtils.bookmarks;
|
|
|
|
// Test that Bookmarks fetch properly orders its results based on
|
|
// the last modified value. Note we cannot rely on dateAdded due to
|
|
// the low PR_Now() resolution.
|
|
|
|
add_task(async function sort_bookmark_by_relevance() {
|
|
let now = new Date();
|
|
let modifiedTime = new Date(now.setHours(now.getHours() - 2));
|
|
|
|
let url = "http://foo.tld.com/";
|
|
let parentGuid = (
|
|
await bm.insert({
|
|
type: bm.TYPE_FOLDER,
|
|
title: "test folder",
|
|
parentGuid: bm.unfiledGuid,
|
|
})
|
|
).guid;
|
|
let item1Guid = (await bm.insert({ url, parentGuid })).guid;
|
|
let item2Guid = (
|
|
await bm.insert({
|
|
url,
|
|
parentGuid,
|
|
dateAdded: modifiedTime,
|
|
lastModified: modifiedTime,
|
|
})
|
|
).guid;
|
|
let bms = [];
|
|
await bm.fetch({ url }, bm1 => bms.push(bm1));
|
|
Assert.equal(bms[0].guid, item1Guid);
|
|
Assert.equal(bms[1].guid, item2Guid);
|
|
await bm.update({ guid: item2Guid, title: "modified" });
|
|
|
|
let bms1 = [];
|
|
await bm.fetch({ url }, bm2 => bms1.push(bm2));
|
|
Assert.equal(bms1[0].guid, item2Guid);
|
|
Assert.equal(bms1[1].guid, item1Guid);
|
|
});
|