forked from mirrors/gecko-dev
Differential Revision: https://phabricator.services.mozilla.com/D45629 --HG-- extra : moz-landing-system : lando
50 lines
1.4 KiB
JavaScript
50 lines
1.4 KiB
JavaScript
"use strict";
|
|
|
|
// These match what we add to IE via InsertIEHistory.exe.
|
|
const TEST_ENTRIES = [
|
|
{
|
|
url: "http://www.mozilla.org/1",
|
|
title: "Mozilla HTTP Test",
|
|
},
|
|
{
|
|
url: "https://www.mozilla.org/2",
|
|
// Test character encoding with a fox emoji:
|
|
title: "Mozilla HTTPS Test 🦊",
|
|
},
|
|
];
|
|
|
|
function insertIEHistory() {
|
|
let file = do_get_file("InsertIEHistory.exe", false);
|
|
let process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
|
|
process.init(file);
|
|
|
|
let args = [];
|
|
process.run(true, args, args.length);
|
|
|
|
Assert.ok(!process.isRunning, "Should be done running");
|
|
Assert.equal(process.exitValue, 0, "Check exit code");
|
|
}
|
|
|
|
add_task(async function setup() {
|
|
await PlacesUtils.history.clear();
|
|
|
|
insertIEHistory();
|
|
|
|
registerCleanupFunction(async () => {
|
|
await PlacesUtils.history.clear();
|
|
});
|
|
});
|
|
|
|
add_task(async function test_IE_history() {
|
|
let migrator = await MigrationUtils.getMigrator("ie");
|
|
Assert.ok(await migrator.isSourceAvailable(), "Source is available");
|
|
|
|
await promiseMigration(migrator, MigrationUtils.resourceTypes.HISTORY);
|
|
|
|
for (let { url, title } of TEST_ENTRIES) {
|
|
let entry = await PlacesUtils.history.fetch(url, { includeVisits: true });
|
|
Assert.equal(entry.url, url, "Should have the correct URL");
|
|
Assert.equal(entry.title, title, "Should have the correct title");
|
|
Assert.ok(!!entry.visits.length, "Should have some visits");
|
|
}
|
|
});
|