Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

/* Any copyright is dedicated to the Public Domain.
// Test to see if we don't get duplicated messages (cached and "live").
// See Bug 1578138 for more information.
"use strict";
// Log 1 message every 50ms, until we reach 50 messages.
const TEST_URI = `data:text/html,<!DOCTYPE html><meta charset=utf8><script>
var i = 0;
var intervalId = setInterval(() => {
if (i >= 50) {
clearInterval(intervalId);
intervalId = null;
return;
}
console.log("startup message " + (++i));
}, 50);
</script>`;
add_task(async function () {
info("Add a tab and open the console");
const tab = await addTab(TEST_URI, { waitForLoad: false });
const hud = await openConsole(tab);
info("wait until all the messages are displayed");
await waitFor(
() =>
findConsoleAPIMessage(hud, "message 1") &&
findConsoleAPIMessage(hud, "message 50")
);
is(
(await findAllMessagesVirtualized(hud)).length,
50,
"We have the expected number of messages"
);
});