/* 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/. */
/** * Test that mozITXTToHTMLConv works properly.
*/
"use strict";
function run_test() {
let converter = Cc["@mozilla.org/txttohtmlconv;1"].getService(
Ci.mozITXTToHTMLConv
);
function hrefLink(url) { return' href="' + url + '"';
}
function linkText(plaintext) { return">" + plaintext + "</a>";
}
for (let i = 0; i < scanTXTtests.length; i++) {
let t = scanTXTtests[i];
let output = converter.scanTXT(t.input, Ci.mozITXTToHTMLConv.kURLs);
let link = hrefLink(t.url);
let text; if (t.text) {
text = linkText(t.text);
} if (!output.includes(link)) {
do_throw( "Unexpected conversion by scanTXT: input=" +
t.input + ", output=" +
output + ", link=" +
link
);
} if (text && !output.includes(text)) {
do_throw( "Unexpected conversion by scanTXT: input=" +
t.input + ", output=" +
output + ", text=" +
text
);
}
}
for (let i = 0; i < scanTXTglyph.length; i++) {
let t = scanTXTglyph[i];
let output = converter.scanTXT(
t.input,
Ci.mozITXTToHTMLConv.kGlyphSubstitution
); for (let j = 0; j < t.results.length; j++) { if (!output.includes(t.results[j])) {
do_throw( "Unexpected conversion by scanTXT: input=" +
t.input + ", output=" +
output + ", expected=" +
t.results[j]
);
}
}
}
for (let i = 0; i < scanTXTstrings.length; ++i) { for (let j = 0; j < scanTXTstructs.length; ++j) {
let input =
scanTXTstructs[j].delimiter +
scanTXTstrings[i] +
scanTXTstructs[j].delimiter;
let expected = "<" +
scanTXTstructs[j].tag + ' class="' +
scanTXTstructs[j].class + '">' + '<span class="moz-txt-tag">' +
scanTXTstructs[j].delimiter + "</span>" +
scanTXTstrings[i] + '<span class="moz-txt-tag">' +
scanTXTstructs[j].delimiter + "</span>" + "</" +
scanTXTstructs[j].tag + ">";
let actual = converter.scanTXT(input, Ci.mozITXTToHTMLConv.kStructPhrase); Assert.equal(encodeURIComponent(actual), encodeURIComponent(expected));
}
}
for (let i = 0; i < scanHTMLtests.length; i++) {
let t = scanHTMLtests[i];
let output = converter.scanHTML(t.input, Ci.mozITXTToHTMLConv.kURLs);
let changed = t.input != output; if (changed != t.shouldChange) {
do_throw( "Unexpected change by scanHTML: changed=" +
changed + ", shouldChange=" +
t.shouldChange + ", \ninput=" +
t.input + ", \noutput=" +
output
);
}
}
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.14Bemerkung:
(vorverarbeitet am 2026-04-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.