browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/browser/devtools/webconsole/test/browser_webconsole_bug_614793_jsterm_scroll.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,56 @@
     1.4 +/* vim:set ts=2 sw=2 sts=2 et: */
     1.5 +/*
     1.6 + * Any copyright is dedicated to the Public Domain.
     1.7 + * http://creativecommons.org/publicdomain/zero/1.0/
     1.8 + *
     1.9 + * Contributor(s):
    1.10 + *   Mihai Șucan <mihai.sucan@gmail.com>
    1.11 + */
    1.12 +
    1.13 +function consoleOpened(hud) {
    1.14 +  hud.jsterm.clearOutput();
    1.15 +
    1.16 +  let scrollNode = hud.outputNode.parentNode;
    1.17 +
    1.18 +  for (let i = 0; i < 150; i++) {
    1.19 +    content.console.log("test message " + i);
    1.20 +  }
    1.21 +
    1.22 +  let oldScrollTop = -1;
    1.23 +
    1.24 +  waitForMessages({
    1.25 +    webconsole: hud,
    1.26 +    messages: [{
    1.27 +      text: "test message 149",
    1.28 +      category: CATEGORY_WEBDEV,
    1.29 +      severity: SEVERITY_LOG,
    1.30 +    }],
    1.31 +  }).then(() => {
    1.32 +    oldScrollTop = scrollNode.scrollTop;
    1.33 +    isnot(oldScrollTop, 0, "scroll location is not at the top");
    1.34 +
    1.35 +    hud.jsterm.execute("'hello world'", onExecute);
    1.36 +  });
    1.37 +
    1.38 +  function onExecute(msg)
    1.39 +  {
    1.40 +    isnot(scrollNode.scrollTop, oldScrollTop, "scroll location updated");
    1.41 +
    1.42 +    oldScrollTop = scrollNode.scrollTop;
    1.43 +
    1.44 +    msg.scrollIntoView(false);
    1.45 +
    1.46 +    is(scrollNode.scrollTop, oldScrollTop, "scroll location is the same");
    1.47 +
    1.48 +    finishTest();
    1.49 +  }
    1.50 +}
    1.51 +
    1.52 +function test() {
    1.53 +  addTab("data:text/html;charset=utf-8,Web Console test for bug 614793: jsterm result scroll");
    1.54 +  browser.addEventListener("load", function onLoad(aEvent) {
    1.55 +    browser.removeEventListener(aEvent.type, onLoad, true);
    1.56 +    openConsole(null, consoleOpened);
    1.57 +  }, true);
    1.58 +}
    1.59 +

mercurial