diff options
Diffstat (limited to 'devtools/client/webconsole/test/browser/browser_webconsole_loglimit.js')
-rw-r--r-- | devtools/client/webconsole/test/browser/browser_webconsole_loglimit.js | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/devtools/client/webconsole/test/browser/browser_webconsole_loglimit.js b/devtools/client/webconsole/test/browser/browser_webconsole_loglimit.js new file mode 100644 index 0000000000..3ee5d4c70d --- /dev/null +++ b/devtools/client/webconsole/test/browser/browser_webconsole_loglimit.js @@ -0,0 +1,86 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Test that messages are properly updated when the log limit is reached. + +const TEST_URI = + "data:text/html;charset=utf-8,<!DOCTYPE html>Web Console test for " + + "Old messages are removed after passing devtools.hud.loglimit"; + +add_task(async function () { + await pushPref("devtools.hud.loglimit", 140); + const hud = await openNewTabAndConsole(TEST_URI); + await clearOutput(hud); + + let onMessage = waitForMessageByType( + hud, + "test message [149]", + ".console-api" + ); + SpecialPowers.spawn(gBrowser.selectedBrowser, [], async function () { + for (let i = 0; i < 150; i++) { + content.console.log(`test message [${i}]`); + } + }); + await onMessage; + + ok( + !(await findMessageVirtualizedByType({ + hud, + text: "test message [0]", + typeSelector: ".console-api", + })), + "Message 0 has been pruned" + ); + ok( + !(await findMessageVirtualizedByType({ + hud, + text: "test message [9]", + typeSelector: ".console-api", + })), + "Message 9 has been pruned" + ); + ok( + await findMessageVirtualizedByType({ + hud, + text: "test message [10]", + typeSelector: ".console-api", + }), + "Message 10 is still displayed" + ); + is( + (await findAllMessagesVirtualized(hud)).length, + 140, + "Number of displayed messages is correct" + ); + + onMessage = waitForMessageByType(hud, "hello world", ".console-api"); + SpecialPowers.spawn(gBrowser.selectedBrowser, [], async function () { + content.console.log("hello world"); + }); + await onMessage; + + ok( + !(await findMessageVirtualizedByType({ + hud, + text: "test message [10]", + typeSelector: ".console-api", + })), + "Message 10 has been pruned" + ); + ok( + await findMessageVirtualizedByType({ + hud, + text: "test message [11]", + typeSelector: ".console-api", + }), + "Message 11 is still displayed" + ); + is( + (await findAllMessagesVirtualized(hud)).length, + 140, + "Number of displayed messages is still correct" + ); +}); |