summaryrefslogtreecommitdiff
path: root/browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js')
-rw-r--r--browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js68
1 files changed, 68 insertions, 0 deletions
diff --git a/browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js b/browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js
new file mode 100644
index 000000000..279fc2967
--- /dev/null
+++ b/browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js
@@ -0,0 +1,68 @@
+/* vim:set ts=2 sw=2 sts=2 et: */
+/*
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ *
+ * Contributor(s):
+ * Mihai Șucan <mihai.sucan@gmail.com>
+ */
+
+function consoleOpened(hud) {
+ hud.jsterm.clearOutput();
+
+ let outputNode = hud.outputNode;
+ let boxObject = outputNode.scrollBoxObject.element;
+
+ for (let i = 0; i < 150; i++) {
+ content.console.log("test message " + i);
+ }
+
+ let oldScrollTop = -1;
+
+ waitForSuccess({
+ name: "console.log messages displayed",
+ validatorFn: function()
+ {
+ return outputNode.itemCount == 150;
+ },
+ successFn: function()
+ {
+ oldScrollTop = boxObject.scrollTop;
+ ok(oldScrollTop > 0, "scroll location is not at the top");
+
+ hud.jsterm.execute("'hello world'");
+
+ waitForSuccess(waitForExecute);
+ },
+ failureFn: finishTest,
+ });
+
+ let waitForExecute = {
+ name: "jsterm output displayed",
+ validatorFn: function()
+ {
+ return outputNode.querySelector(".webconsole-msg-output");
+ },
+ successFn: function()
+ {
+ isnot(boxObject.scrollTop, oldScrollTop, "scroll location updated");
+
+ oldScrollTop = boxObject.scrollTop;
+ outputNode.scrollBoxObject.ensureElementIsVisible(outputNode.lastChild);
+
+ is(boxObject.scrollTop, oldScrollTop, "scroll location is the same");
+
+ finishTest();
+ },
+ failureFn: finishTest,
+ };
+}
+
+function test() {
+ addTab("data:text/html;charset=utf-8,Web Console test for bug 614793: jsterm result scroll");
+ browser.addEventListener("load", function onLoad(aEvent) {
+ browser.removeEventListener(aEvent.type, onLoad, true);
+ openConsole(null, consoleOpened);
+ }, true);
+}
+