164 lines
4.5 KiB
JavaScript
164 lines
4.5 KiB
JavaScript
"use strict";
|
|
|
|
const { Qihoo360seMigrationUtils } = ChromeUtils.importESModule(
|
|
"resource:///modules/360seMigrationUtils.sys.mjs"
|
|
);
|
|
|
|
const parentPath = do_get_file("AppData/Roaming/360se6/User Data").path;
|
|
const loggedInPath = "0f3ab103a522f4463ecacc36d34eb996";
|
|
const loggedInBackup = PathUtils.join(
|
|
parentPath,
|
|
"Default",
|
|
loggedInPath,
|
|
"DailyBackup",
|
|
"360default_ori_2021_12_02.favdb"
|
|
);
|
|
const loggedOutBackup = PathUtils.join(
|
|
parentPath,
|
|
"Default",
|
|
"DailyBackup",
|
|
"360default_ori_2021_12_02.favdb"
|
|
);
|
|
|
|
function getSqlitePath(profileId) {
|
|
return PathUtils.join(parentPath, profileId, loggedInPath, "360sefav.dat");
|
|
}
|
|
|
|
add_task(async function test_360se10_logged_in() {
|
|
const sqlitePath = getSqlitePath("Default");
|
|
await IOUtils.setModificationTime(sqlitePath);
|
|
await IOUtils.copy(
|
|
PathUtils.join(parentPath, "Default", "360Bookmarks"),
|
|
PathUtils.join(parentPath, "Default", loggedInPath)
|
|
);
|
|
await IOUtils.copy(loggedOutBackup, loggedInBackup);
|
|
|
|
const alternativeBookmarks =
|
|
await Qihoo360seMigrationUtils.getAlternativeBookmarks({
|
|
bookmarksPath: PathUtils.join(parentPath, "Default", "Bookmarks"),
|
|
localState: {
|
|
sync_login_info: {
|
|
filepath: loggedInPath,
|
|
},
|
|
},
|
|
});
|
|
Assert.ok(
|
|
alternativeBookmarks.resource && alternativeBookmarks.resource.exists,
|
|
"Should return the legacy bookmark resource."
|
|
);
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.path,
|
|
undefined,
|
|
"Should not return any path to plain text bookmarks."
|
|
);
|
|
});
|
|
|
|
add_task(async function test_360se10_logged_in_outdated_sqlite() {
|
|
const sqlitePath = getSqlitePath("Default");
|
|
await IOUtils.setModificationTime(
|
|
sqlitePath,
|
|
new Date("2020-08-18").valueOf()
|
|
);
|
|
|
|
const alternativeBookmarks =
|
|
await Qihoo360seMigrationUtils.getAlternativeBookmarks({
|
|
bookmarksPath: PathUtils.join(parentPath, "Default", "Bookmarks"),
|
|
localState: {
|
|
sync_login_info: {
|
|
filepath: loggedInPath,
|
|
},
|
|
},
|
|
});
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.resource,
|
|
undefined,
|
|
"Should not return the outdated legacy bookmark resource."
|
|
);
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.path,
|
|
loggedInBackup,
|
|
"Should return path to the most recent plain text bookmarks backup."
|
|
);
|
|
|
|
await IOUtils.setModificationTime(sqlitePath);
|
|
});
|
|
|
|
add_task(async function test_360se10_logged_out() {
|
|
const alternativeBookmarks =
|
|
await Qihoo360seMigrationUtils.getAlternativeBookmarks({
|
|
bookmarksPath: PathUtils.join(parentPath, "Default", "Bookmarks"),
|
|
localState: {
|
|
sync_login_info: {
|
|
filepath: "",
|
|
},
|
|
},
|
|
});
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.resource,
|
|
undefined,
|
|
"Should not return the legacy bookmark resource."
|
|
);
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.path,
|
|
loggedOutBackup,
|
|
"Should return path to the most recent plain text bookmarks backup."
|
|
);
|
|
});
|
|
|
|
add_task(async function test_360se9_logged_in_outdated_sqlite() {
|
|
const sqlitePath = getSqlitePath("Default4SE9Test");
|
|
await IOUtils.setModificationTime(
|
|
sqlitePath,
|
|
new Date("2020-08-18").valueOf()
|
|
);
|
|
|
|
const alternativeBookmarks =
|
|
await Qihoo360seMigrationUtils.getAlternativeBookmarks({
|
|
bookmarksPath: PathUtils.join(parentPath, "Default4SE9Test", "Bookmarks"),
|
|
localState: {
|
|
sync_login_info: {
|
|
filepath: loggedInPath,
|
|
},
|
|
},
|
|
});
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.resource,
|
|
undefined,
|
|
"Should not return the legacy bookmark resource."
|
|
);
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.path,
|
|
PathUtils.join(
|
|
parentPath,
|
|
"Default4SE9Test",
|
|
loggedInPath,
|
|
"DailyBackup",
|
|
"360sefav_2020_08_28.favdb"
|
|
),
|
|
"Should return path to the most recent plain text bookmarks backup."
|
|
);
|
|
|
|
await IOUtils.setModificationTime(sqlitePath);
|
|
});
|
|
|
|
add_task(async function test_360se9_logged_out() {
|
|
const alternativeBookmarks =
|
|
await Qihoo360seMigrationUtils.getAlternativeBookmarks({
|
|
bookmarksPath: PathUtils.join(parentPath, "Default4SE9Test", "Bookmarks"),
|
|
localState: {
|
|
sync_login_info: {
|
|
filepath: "",
|
|
},
|
|
},
|
|
});
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.resource,
|
|
undefined,
|
|
"Should not return the legacy bookmark resource."
|
|
);
|
|
Assert.strictEqual(
|
|
alternativeBookmarks.path,
|
|
PathUtils.join(parentPath, "Default4SE9Test", "Bookmarks"),
|
|
"Should return path to the plain text canonical bookmarks."
|
|
);
|
|
});
|