Inspector may close at the start of the next inspector test in DRT
authorzherczeg@webkit.org <zherczeg@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Jun 2011 12:02:58 +0000 (12:02 +0000)
committerzherczeg@webkit.org <zherczeg@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Jun 2011 12:02:58 +0000 (12:02 +0000)
https://bugs.webkit.org/show_bug.cgi?id=60881

Patch by Zoltan Herczeg <zherczeg@inf.u-szeged.hu> on 2011-06-23
Reviewed by Pavel Feldman.

Source/WebCore:

Add a new function to the inspector, which tests whether the
dispatch queue is empty.

* inspector/front-end/inspector.js:
(WebInspector.dispatchQueueIsEmpty):

LayoutTests:

The didEvaluateForTestInFrontend function call is postponed until
all messages in the dispatch queue is processed.

* http/tests/inspector/inspector-test.js:
(initialize_InspectorTest.InspectorTest.completeTest):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89556 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/http/tests/inspector/inspector-test.js
Source/WebCore/ChangeLog
Source/WebCore/inspector/front-end/inspector.js

index 7fbc22c..5dd7bb2 100644 (file)
@@ -1,3 +1,16 @@
+2011-06-23  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>
+
+        Reviewed by Pavel Feldman.
+
+        Inspector may close at the start of the next inspector test in DRT
+        https://bugs.webkit.org/show_bug.cgi?id=60881
+
+        The didEvaluateForTestInFrontend function call is postponed until
+        all messages in the dispatch queue is processed.
+
+        * http/tests/inspector/inspector-test.js:
+        (initialize_InspectorTest.InspectorTest.completeTest):
+
 2011-06-23  Sergio Villar Senin  <svillar@igalia.com>
 
         Unreviewed, final round of baselines for the new CSS2.1 tests added in r88913.
index b05878e..22d706e 100644 (file)
@@ -14,7 +14,15 @@ console.info = consoleOutputHook.bind(InspectorTest, "info");
 
 InspectorTest.completeTest = function()
 {
-    RuntimeAgent.evaluate("didEvaluateForTestInFrontend(" + InspectorTest.completeTestCallId + ", \"\")", "test");
+    function testDispatchQueueIsEmpty() {
+        if (!WebInspector.dispatchQueueIsEmpty()) {
+            // Wait for unprocessed messages.
+            setTimeout(testDispatchQueueIsEmpty, 10);
+            return;
+        }
+        RuntimeAgent.evaluate("didEvaluateForTestInFrontend(" + InspectorTest.completeTestCallId + ", \"\")", "test");
+    }
+    testDispatchQueueIsEmpty();
 }
 
 InspectorTest.evaluateInConsole = function(code, callback)
index 27e25e2..408498d 100644 (file)
@@ -1,3 +1,16 @@
+2011-06-23  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>
+
+        Reviewed by Pavel Feldman.
+
+        Inspector may close at the start of the next inspector test in DRT
+        https://bugs.webkit.org/show_bug.cgi?id=60881
+
+        Add a new function to the inspector, which tests whether the
+        dispatch queue is empty.
+
+        * inspector/front-end/inspector.js:
+        (WebInspector.dispatchQueueIsEmpty):
+
 2011-06-23  Jeffrey Pfau  <jpfau@apple.com>
 
         Reviewed by Nikolas Zimmermann.
index f763c46..40d5ed1 100644 (file)
@@ -537,6 +537,10 @@ window.addEventListener("DOMContentLoaded", windowLoaded, false);
 
 var messagesToDispatch = [];
 
+WebInspector.dispatchQueueIsEmpty = function() {
+    return messagesToDispatch.length == 0;
+}
+
 WebInspector.dispatch = function(message) {
     messagesToDispatch.push(message);
     setTimeout(function() {