123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
- // Whitelisting this test.
- // As part of bug 1077403, the leaking uncaught rejection should be fixed.
- //
- "use strict";
- thisTestLeaksUncaughtRejectionsAndShouldBeFixed("null");
- // Test the webconsole output for various types of objects.
- const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
- "test/test-console-output-04.html";
- var inputTests = [
- // 0
- {
- input: "testTextNode()",
- output: '#text "hello world!"',
- printOutput: "[object Text]",
- inspectable: true,
- noClick: true,
- },
- // 1
- {
- input: "testCommentNode()",
- output: /<!--\s+- Any copyright /,
- printOutput: "[object Comment]",
- inspectable: true,
- noClick: true,
- },
- // 2
- {
- input: "testDocumentFragment()",
- output: "DocumentFragment [ <div#foo1.bar>, <div#foo3> ]",
- printOutput: "[object DocumentFragment]",
- inspectable: true,
- variablesViewLabel: "DocumentFragment[2]",
- },
- // 3
- {
- input: "testError()",
- output: "TypeError: window.foobar is not a function\n" +
- "Stack trace:\n" +
- "testError@" + TEST_URI + ":44",
- printOutput: '"TypeError: window.foobar is not a function"',
- inspectable: true,
- variablesViewLabel: "TypeError",
- },
- // 4
- {
- input: "testDOMException()",
- output: `DOMException [SyntaxError: "'foo;()bar!' is not a valid selector"`,
- printOutput: `"SyntaxError: 'foo;()bar!' is not a valid selector"`,
- inspectable: true,
- variablesViewLabel: "SyntaxError",
- },
- // 5
- {
- input: "testCSSStyleDeclaration()",
- output: 'CSS2Properties { color: "green", font-size: "2em" }',
- printOutput: "[object CSS2Properties]",
- inspectable: true,
- noClick: true,
- },
- // 6
- {
- input: "testStyleSheetList()",
- output: "StyleSheetList [ CSSStyleSheet ]",
- printOutput: "[object StyleSheetList",
- inspectable: true,
- variablesViewLabel: "StyleSheetList[1]",
- },
- // 7
- {
- input: "document.styleSheets[0]",
- output: "CSSStyleSheet",
- printOutput: "[object CSSStyleSheet]",
- inspectable: true,
- },
- // 8
- {
- input: "document.styleSheets[0].cssRules",
- output: "CSSRuleList [ CSSStyleRule, CSSMediaRule ]",
- printOutput: "[object CSSRuleList",
- inspectable: true,
- variablesViewLabel: "CSSRuleList[2]",
- },
- // 9
- {
- input: "document.styleSheets[0].cssRules[0]",
- output: 'CSSStyleRule "p, div"',
- printOutput: "[object CSSStyleRule",
- inspectable: true,
- variablesViewLabel: "CSSStyleRule",
- },
- // 10
- {
- input: "document.styleSheets[0].cssRules[1]",
- output: 'CSSMediaRule "print"',
- printOutput: "[object CSSMediaRule",
- inspectable: true,
- variablesViewLabel: "CSSMediaRule",
- },
- ];
- function test() {
- requestLongerTimeout(2);
- Task.spawn(function* () {
- const {tab} = yield loadTab(TEST_URI);
- const hud = yield openConsole(tab);
- yield checkOutputForInputs(hud, inputTests);
- inputTests = null;
- }).then(finishTest);
- }
|