forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			71 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* vim:set ts=2 sw=2 sts=2 et: */
 | 
						|
/* This Source Code Form is subject to the terms of the Mozilla Public
 | 
						|
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 | 
						|
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | 
						|
 | 
						|
// Tests that console logging via the console API produces nodes of the correct
 | 
						|
// CSS classes.
 | 
						|
 | 
						|
const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-console.html";
 | 
						|
 | 
						|
function test() {
 | 
						|
  addTab(TEST_URI);
 | 
						|
  browser.addEventListener("load", function onLoad() {
 | 
						|
    browser.removeEventListener("load", onLoad, true);
 | 
						|
    openConsole(null, consoleOpened);
 | 
						|
  }, true);
 | 
						|
}
 | 
						|
 | 
						|
function consoleOpened(aHud) {
 | 
						|
  let console = content.console;
 | 
						|
  outputNode = aHud.outputNode;
 | 
						|
 | 
						|
  ok(console, "console exists");
 | 
						|
  console.log("I am a log message");
 | 
						|
  console.error("I am an error");
 | 
						|
  console.info("I am an info message");
 | 
						|
  console.warn("I am a warning  message");
 | 
						|
 | 
						|
  waitForSuccess({
 | 
						|
    name: "console.warn displayed",
 | 
						|
    validatorFn: function()
 | 
						|
    {
 | 
						|
      return aHud.outputNode.textContent.indexOf("a warning") > -1;
 | 
						|
    },
 | 
						|
    successFn: testLogNodeClasses,
 | 
						|
    failureFn: finishTest,
 | 
						|
  });
 | 
						|
}
 | 
						|
 | 
						|
function testLogNodeClasses() {
 | 
						|
  let domLogEntries = outputNode.childNodes;
 | 
						|
 | 
						|
  let count = outputNode.childNodes.length;
 | 
						|
  ok(count > 0, "LogCount: " + count);
 | 
						|
 | 
						|
  let klasses = ["hud-log",
 | 
						|
                 "hud-warn",
 | 
						|
                 "hud-info",
 | 
						|
                 "hud-error",
 | 
						|
                 "hud-exception",
 | 
						|
                 "hud-network"];
 | 
						|
 | 
						|
  function verifyClass(classList) {
 | 
						|
    let len = klasses.length;
 | 
						|
    for (var i = 0; i < len; i++) {
 | 
						|
      if (classList.contains(klasses[i])) {
 | 
						|
        return true;
 | 
						|
      }
 | 
						|
    }
 | 
						|
    return false;
 | 
						|
  }
 | 
						|
 | 
						|
  for (var i = 0; i < count; i++) {
 | 
						|
    let classList = domLogEntries[i].classList;
 | 
						|
    ok(verifyClass(classList),
 | 
						|
       "Log Node class verified: " + domLogEntries[i].getAttribute("class"));
 | 
						|
  }
 | 
						|
 | 
						|
  finishTest();
 | 
						|
}
 | 
						|
 |