Upstream version 9.37.195.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / http / tests / inspector / console-test.js
index 5aa073c..3f2a47f 100644 (file)
@@ -1,9 +1,9 @@
 var initialize_ConsoleTest = function() {
 
+
 InspectorTest.showConsolePanel = function()
 {
-    WebInspector.showPanel("console");
-    WebInspector.inspectorView._drawer._immediatelyFinishAnimation();
+    WebInspector.inspectorView.showPanel("console");
 }
 
 InspectorTest.prepareConsoleMessageText = function(messageElement)
@@ -18,13 +18,31 @@ InspectorTest.prepareConsoleMessageText = function(messageElement)
     return messageText;
 }
 
-InspectorTest.dumpConsoleMessages = function(printOriginatingCommand, dumpClassNames)
+InspectorTest.disableConsoleViewport = function()
+{
+    InspectorTest.fixConsoleViewportDimensions(600, 2000);
+}
+
+InspectorTest.fixConsoleViewportDimensions = function(width, height)
 {
+    var viewport = WebInspector.ConsolePanel._view()._viewport;
+    viewport.element.style.width = width + "px";
+    viewport.element.style.height = height + "px";
+    viewport.element.style.position = "absolute";
+    viewport.invalidate();
+}
+
+InspectorTest.dumpConsoleMessages = function(printOriginatingCommand, dumpClassNames, formatter)
+{
+    WebInspector.inspectorView.panel("console");
+    formatter = formatter || InspectorTest.prepareConsoleMessageText;
     var result = [];
-    var visibleMessagesIndices = WebInspector.consoleView._visibleMessagesIndices;
-    for (var i = 0; i < visibleMessagesIndices.length; ++i) {
-        var message = WebInspector.console.messages[visibleMessagesIndices[i]];
-        var element = message.toMessageElement();
+    InspectorTest.disableConsoleViewport();
+    var viewMessages = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < viewMessages.length; ++i) {
+        var uiMessage = viewMessages[i];
+        var message = uiMessage.consoleMessage();
+        var element = uiMessage.contentElement();
 
         if (dumpClassNames) {
             var classNames = [];
@@ -34,25 +52,25 @@ InspectorTest.dumpConsoleMessages = function(printOriginatingCommand, dumpClassN
             }
         }
 
-        if (InspectorTest.dumpConsoleTableMessage(message)) {
+        if (InspectorTest.dumpConsoleTableMessage(uiMessage, false)) {
             if (dumpClassNames)
                 InspectorTest.addResult(classNames.join(" > "));
         } else {
-            var messageText = InspectorTest.prepareConsoleMessageText(element)
+            var messageText = formatter(element);
             InspectorTest.addResult(messageText + (dumpClassNames ? " " + classNames.join(" > ") : ""));
         }
 
-        if (printOriginatingCommand && message.originatingCommand) {
-            var originatingElement = message.originatingCommand.toMessageElement();
-            InspectorTest.addResult("Originating from: " + originatingElement.textContent.replace(/\u200b/g, ""));
-        }
+        if (printOriginatingCommand && uiMessage.consoleMessage().originatingMessage())
+            InspectorTest.addResult("Originating from: " + uiMessage.consoleMessage().originatingMessage().messageText);
     }
     return result;
 }
 
-InspectorTest.dumpConsoleTableMessage = function(message)
+InspectorTest.dumpConsoleTableMessage = function(viewMessage, forceInvalidate)
 {
-    var table = message.toMessageElement();
+    if (forceInvalidate)
+        WebInspector.ConsolePanel._view()._viewport.invalidate();
+    var table = viewMessage.contentElement();
     var headers = table.querySelectorAll("th div");
     if (!headers.length)
         return false;
@@ -68,7 +86,7 @@ InspectorTest.dumpConsoleTableMessage = function(message)
     for (var i = 0; i < rows.length; i++) {
         var row = rows[i];
         var rowLine = "";
-        var items = row.querySelectorAll("td > div > span");
+        var items = row.querySelectorAll("td > span");
         for (var j = 0; j < items.length; j++)
             rowLine += items[j].textContent + " | ";
 
@@ -80,10 +98,11 @@ InspectorTest.dumpConsoleTableMessage = function(message)
 
 InspectorTest.dumpConsoleMessagesWithStyles = function(sortMessages)
 {
+    WebInspector.inspectorView.panel("console");
     var result = [];
-    var indices = WebInspector.consoleView._visibleMessagesIndices;
-    for (var i = 0; i < indices.length; ++i) {
-        var element = WebInspector.console.messages[indices[i]].toMessageElement();
+    var messageViews = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < messageViews.length; ++i) {
+        var element = messageViews[i].contentElement();
         var messageText = InspectorTest.prepareConsoleMessageText(element)
         InspectorTest.addResult(messageText);
         var spans = element.querySelectorAll(".console-message-text > span > span");
@@ -93,11 +112,12 @@ InspectorTest.dumpConsoleMessagesWithStyles = function(sortMessages)
 }
 
 InspectorTest.dumpConsoleMessagesWithClasses = function(sortMessages) {
+    WebInspector.inspectorView.panel("console");
     var result = [];
-    var indices = WebInspector.consoleView._visibleMessagesIndices;
-    for (var i = 0; i < indices.length; ++i) {
-        var element = WebInspector.console.messages[indices[i]].toMessageElement();
-        var messageText = InspectorTest.prepareConsoleMessageText(element)
+    var messageViews = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < messageViews.length; ++i) {
+        var element = messageViews[i].contentElement();
+        var messageText = InspectorTest.prepareConsoleMessageText(element);
         result.push(messageText + " " + element.getAttribute("class"));
     }
     if (sortMessages)
@@ -108,10 +128,11 @@ InspectorTest.dumpConsoleMessagesWithClasses = function(sortMessages) {
 
 InspectorTest.expandConsoleMessages = function(callback)
 {
-    var indices = WebInspector.consoleView._visibleMessagesIndices;
-    for (var i = 0; i < indices.length; ++i) {
-        var message = WebInspector.console.messages[indices[i]];
-        var element = message.toMessageElement();
+    WebInspector.inspectorView.panel("console");
+    var messageViews = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < messageViews.length; ++i) {
+        var message = messageViews[i].consoleMessage();
+        var element = messageViews[i].contentElement();
         var node = element;
         while (node) {
             if (node.treeElementForTest)
@@ -127,16 +148,25 @@ InspectorTest.expandConsoleMessages = function(callback)
         InspectorTest.runAfterPendingDispatches(callback);
 }
 
+InspectorTest.waitForRemoteObjectsConsoleMessages = function(callback)
+{
+    var messages = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < messages.length; ++i)
+        messages[i].toMessageElement();
+    InspectorTest.runAfterPendingDispatches(callback);
+}
+
 InspectorTest.checkConsoleMessagesDontHaveParameters = function()
 {
-    var indices = WebInspector.consoleView._visibleMessagesIndices;
-    for (var i = 0; i < indices.length; ++i) {
-        var m = WebInspector.console.messages[indices[i]];
+    WebInspector.inspectorView.panel("console");
+    var messageViews = WebInspector.ConsolePanel._view()._visibleViewMessages;
+    for (var i = 0; i < messageViews.length; ++i) {
+        var m = messageViews[i].consoleMessage();
         InspectorTest.addResult("Message[" + i + "]:");
         InspectorTest.addResult("Message: " + WebInspector.displayNameForURL(m.url) + ":" + m.line + " " + m.message);
         if ("_parameters" in m) {
             if (m._parameters)
-                InspectorTest.addResult("FAILED: message parameters list is not empty: " + m._parameters);
+                InspectorTest.addResult("FAILED: message parameters list is not empty: " + m.parameters);
             else
                 InspectorTest.addResult("SUCCESS: message parameters list is empty. ");
         } else {
@@ -150,4 +180,35 @@ InspectorTest.waitUntilMessageReceived = function(callback)
     InspectorTest.addSniffer(WebInspector.console, "addMessage", callback, false);
 }
 
+InspectorTest.waitUntilNthMessageReceived = function(count, callback)
+{
+    function override()
+    {
+        if (--count === 0)
+            InspectorTest.safeWrap(callback)();
+        else
+            InspectorTest.addSniffer(WebInspector.console, "addMessage", override, false);
+    }
+    InspectorTest.addSniffer(WebInspector.console, "addMessage", override, false);
+}
+
+InspectorTest.changeExecutionContext = function(namePrefix)
+{
+    WebInspector.inspectorView.panel("console");
+    var selector = WebInspector.ConsolePanel._view()._executionContextSelector._selectElement;
+    var option = selector.firstChild;
+    while (option) {
+        if (option.textContent && option.textContent.startsWith(namePrefix))
+            break;
+        option = option.nextSibling;
+    }
+    if (!option) {
+        InspectorTest.addResult("FAILED: context with prefix: "  + namePrefix + " not found in the context list");
+        return;
+    }
+    option.selected = true;
+    WebInspector.ConsolePanel._view()._executionContextChanged();
+}
+
+
 }