41 lines
1.1 KiB
JavaScript
41 lines
1.1 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/
|
|
*/
|
|
|
|
var content = "line 1\nline 2\nline 3";
|
|
|
|
add_task(async function () {
|
|
// First test with text with the text/html mimetype.
|
|
let tab = await openDocument("data:text/html," + encodeURIComponent(content));
|
|
await checkViewSource(tab);
|
|
gBrowser.removeTab(tab);
|
|
|
|
tab = await openDocument("data:text/plain," + encodeURIComponent(content));
|
|
await checkViewSource(tab);
|
|
gBrowser.removeTab(tab);
|
|
});
|
|
|
|
var checkViewSource = async function (aTab) {
|
|
let browser = aTab.linkedBrowser;
|
|
await SpecialPowers.spawn(browser, [content], async function (text) {
|
|
is(content.document.body.textContent, text, "Correct content loaded");
|
|
});
|
|
|
|
for (let i = 1; i <= 3; i++) {
|
|
browser.sendMessageToActor(
|
|
"ViewSource:GoToLine",
|
|
{
|
|
lineNumber: i,
|
|
},
|
|
"ViewSourcePage"
|
|
);
|
|
await SpecialPowers.spawn(browser, [i], async function (i) {
|
|
let selection = content.getSelection();
|
|
Assert.equal(
|
|
selection.toString().trim(),
|
|
"line " + i,
|
|
"Correct text selected"
|
|
);
|
|
});
|
|
}
|
|
};
|