Changeset 62769 in webkit


Ignore:
Timestamp:
Jul 8, 2010 1:40:17 AM (14 years ago)
Author:
yurys@chromium.org
Message:

2010-07-08 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: factor out common part of debugger tests
https://bugs.webkit.org/show_bug.cgi?id=41836

  • bindings/js/ScriptDebugServer.cpp: (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.

2010-07-08 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: factor out common part of debugger tests. Also explicitely disable debugger when test is complete.
https://bugs.webkit.org/show_bug.cgi?id=41836

  • http/tests/inspector/debugger-test.js: Added. (frontend_ensureDebuggerEnabled): (frontend_ensureDebuggerDisabled): (frontend_completeDebuggerTest):
  • http/tests/inspector/inspector-test.js: (completeTest):
  • inspector/debugger-pause-in-eval-script-expected.txt:
  • inspector/debugger-pause-in-eval-script.html:
  • inspector/debugger-pause-on-debugger-statement-expected.txt:
  • inspector/debugger-pause-on-debugger-statement.html:
  • inspector/debugger-proto-property-expected.txt:
  • inspector/debugger-proto-property.html:
Location:
trunk
Files:
1 added
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r62753 r62769  
     12010-07-08  Yury Semikhatsky  <yurys@chromium.org>
     2
     3        Reviewed by Pavel Feldman.
     4
     5        Web Inspector: factor out common part of debugger tests. Also explicitely disable debugger when test is complete.
     6        https://bugs.webkit.org/show_bug.cgi?id=41836
     7
     8        * http/tests/inspector/debugger-test.js: Added.
     9        (frontend_ensureDebuggerEnabled):
     10        (frontend_ensureDebuggerDisabled):
     11        (frontend_completeDebuggerTest):
     12        * http/tests/inspector/inspector-test.js:
     13        (completeTest):
     14        * inspector/debugger-pause-in-eval-script-expected.txt:
     15        * inspector/debugger-pause-in-eval-script.html:
     16        * inspector/debugger-pause-on-debugger-statement-expected.txt:
     17        * inspector/debugger-pause-on-debugger-statement.html:
     18        * inspector/debugger-proto-property-expected.txt:
     19        * inspector/debugger-proto-property.html:
     20
    1212010-07-07  Nicolas Weber  <thakis@chromium.org>
    222
  • trunk/LayoutTests/http/tests/inspector/inspector-test.js

    r62630 r62769  
    6868    } else
    6969        output(result);
     70}
     71
     72function completeTest(result)
     73{
     74    dumpArray(result);
     75    notifyDone();
    7076}
    7177
  • trunk/LayoutTests/inspector/debugger-pause-in-eval-script-expected.txt

    r61859 r62769  
    77Execution line text:     debugger;
    88Resumed script execution.
     9Disabled debugger.
    910
  • trunk/LayoutTests/inspector/debugger-pause-in-eval-script.html

    r61859 r62769  
    22<head>
    33<script src="../http/tests/inspector/inspector-test.js"></script>
     4<script src="../http/tests/inspector/debugger-test.js"></script>
    45<script>
    56
    67function doit()
    78{
    8     function callback(result)
    9     {
    10         if (result instanceof Array) {
    11             for (var i = 0; i < result.length; i++)
    12                 output(result[i]);
    13         } else
    14             output(result);
    15         notifyDone();
    16     }
    17     evaluateInWebInspector("frontend_testPauseOnDebuggerStatement", callback);
     9    evaluateInWebInspector("frontend_testPauseOnDebuggerStatement", completeTest);
    1810}
    1911
     
    4436    {
    4537        testController.results.push("Script execution paused.");
    46         frontend_checkExecutionLineWhenSourceFrameIsLoaded(testController, completeTest);
     38        frontend_checkExecutionLineWhenSourceFrameIsLoaded(testController, frontend_completeDebuggerTest.bind(null, testController));
    4739    });
    48 
    49     function completeTest()
    50     {
    51        if (WebInspector.panels.scripts.paused)
    52             WebInspector.panels.scripts._togglePause();
    53         testController.results.push("Resumed script execution.");
    54         testController.notifyDone();
    55     }
    56 }
    57 
    58 function frontend_ensureDebuggerEnabled(callback)
    59 {
    60     if (WebInspector.panels.scripts._debuggerEnabled) {
    61         callback();
    62         return;
    63     }
    64 
    65     frontend_addSniffer(WebInspector, "debuggerWasEnabled", callback);
    66     WebInspector.panels.scripts._toggleDebugging(false);
    6740}
    6841
     
    7548        callback();
    7649    } else {
    77         setTimeout(function() {
     50        frontend_addSniffer(sourceFrame, "setContent", function() {
    7851            frontend_checkExecutionLineWhenSourceFrameIsLoaded(testController, callback);
    79         }, 100);
     52        });
    8053    }
    8154}
  • trunk/LayoutTests/inspector/debugger-pause-on-debugger-statement-expected.txt

    r61749 r62769  
    55Script execution paused.
    66Resumed script execution.
     7Disabled debugger.
    78
  • trunk/LayoutTests/inspector/debugger-pause-on-debugger-statement.html

    r61749 r62769  
    22<head>
    33<script src="../http/tests/inspector/inspector-test.js"></script>
     4<script src="../http/tests/inspector/debugger-test.js"></script>
    45<script>
    56
     
    1011function doit()
    1112{
    12     function callback(result)
    13     {
    14         if (result instanceof Array) {
    15             for (var i = 0; i < result.length; i++)
    16                 output(result[i]);
    17         } else
    18             output(result);
    19         notifyDone();
    20     }
    21     evaluateInWebInspector("frontend_testPauseOnDebuggerStatement", callback);
     13    evaluateInWebInspector("frontend_testPauseOnDebuggerStatement", completeTest);
    2214}
    2315
     
    4133    {
    4234        testController.results.push("Script execution paused.");
    43         if (WebInspector.panels.scripts.paused)
    44             WebInspector.panels.scripts._togglePause();
    45         testController.results.push("Resumed script execution.");
    46         testController.notifyDone();
     35        frontend_completeDebuggerTest(testController);
    4736    });
    48 }
    49 
    50 function frontend_ensureDebuggerEnabled(callback)
    51 {
    52     if (WebInspector.panels.scripts._debuggerEnabled) {
    53         callback();
    54         return;
    55     }
    56 
    57     frontend_addSniffer(WebInspector, "debuggerWasEnabled", callback);
    58     WebInspector.panels.scripts._toggleDebugging(false);
    5937}
    6038
  • trunk/LayoutTests/inspector/debugger-proto-property-expected.txt

    r61997 r62769  
    77Expanded property: d.__proto__.__proto__.__proto__.__proto__.__proto__
    88Resumed script execution.
     9Disabled debugger.
    910
  • trunk/LayoutTests/inspector/debugger-proto-property.html

    r61997 r62769  
    22<head>
    33<script src="../http/tests/inspector/inspector-test.js"></script>
     4<script src="../http/tests/inspector/debugger-test.js"></script>
    45<script>
    56
     
    1819function doit()
    1920{
    20     function callback(result)
    21     {
    22         if (result instanceof Array) {
    23             for (var i = 0; i < result.length; i++)
    24                 output(result[i]);
    25         } else
    26             output(result);
    27         notifyDone();
    28     }
    29     evaluateInWebInspector("frontend_testProtoPropertyOnPause", callback);
     21    evaluateInWebInspector("frontend_testProtoPropertyOnPause", completeTest);
    3022}
    3123
     
    5547            localScope, ["d", "__proto__", "__proto__", "__proto__", "__proto__", "__proto__"]
    5648        ];
    57         frontend_expandProperties(testController, properties, completeTest);
     49        frontend_expandProperties(testController, properties, frontend_completeDebuggerTest.bind(null, testController));
    5850    });
    59 
    60     function completeTest()
    61     {
    62         if (WebInspector.panels.scripts.paused)
    63             WebInspector.panels.scripts._togglePause();
    64         testController.results.push("Resumed script execution.");
    65         testController.notifyDone();
    66     }
    6751}
    6852
     
    11599}
    116100
    117 function frontend_ensureDebuggerEnabled(callback)
    118 {
    119     if (WebInspector.panels.scripts._debuggerEnabled) {
    120         callback();
    121         return;
    122     }
    123 
    124     frontend_addSniffer(WebInspector, "debuggerWasEnabled", callback);
    125     WebInspector.panels.scripts._toggleDebugging(false);
    126 }
    127 
    128101</script>
    129102</head>
  • trunk/WebCore/ChangeLog

    r62767 r62769  
     12010-07-08  Yury Semikhatsky  <yurys@chromium.org>
     2
     3        Reviewed by Pavel Feldman.
     4
     5        Web Inspector: factor out common part of debugger tests
     6        https://bugs.webkit.org/show_bug.cgi?id=41836
     7
     8        * bindings/js/ScriptDebugServer.cpp:
     9        (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.
     10
    1112010-07-08  Patrick Gansterer  <paroga@paroga.com>
    212
  • trunk/WebCore/bindings/js/ScriptDebugServer.cpp

    r62095 r62769  
    569569{
    570570    JSLock lock(SilenceAssertionsOnly);
    571     Debugger::recompileAllJSFunctions(JSDOMWindow::commonJSGlobalData());
     571    // If JavaScript stack is not empty postpone recompilation.
     572    if (JSDOMWindow::commonJSGlobalData()->dynamicGlobalObject)
     573        recompileAllJSFunctionsSoon();
     574    else
     575        Debugger::recompileAllJSFunctions(JSDOMWindow::commonJSGlobalData());
    572576}
    573577
Note: See TracChangeset for help on using the changeset viewer.