summaryrefslogtreecommitdiffstats
path: root/WebKit/chromium/src/js
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/chromium/src/js')
-rw-r--r--WebKit/chromium/src/js/DebuggerScript.js271
-rw-r--r--WebKit/chromium/src/js/DevTools.js4
-rw-r--r--WebKit/chromium/src/js/DevToolsHostStub.js38
-rw-r--r--WebKit/chromium/src/js/Tests.js224
4 files changed, 0 insertions, 537 deletions
diff --git a/WebKit/chromium/src/js/DebuggerScript.js b/WebKit/chromium/src/js/DebuggerScript.js
deleted file mode 100644
index 5a8a7bf..0000000
--- a/WebKit/chromium/src/js/DebuggerScript.js
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-(function () {
-
-var DebuggerScript = {};
-DebuggerScript._breakpoints = {};
-
-DebuggerScript.PauseOnExceptionsState = {
- DontPauseOnExceptions : 0,
- PauseOnAllExceptions : 1,
- PauseOnUncaughtExceptions: 2
-};
-
-DebuggerScript.ScriptWorldType = {
- MainWorld : 0,
- ExtensionsWorld : 1
-};
-
-DebuggerScript._pauseOnExceptionsState = DebuggerScript.PauseOnExceptionsState.DontPauseOnExceptions;
-Debug.clearBreakOnException();
-Debug.clearBreakOnUncaughtException();
-
-DebuggerScript.getAfterCompileScript = function(eventData)
-{
- return DebuggerScript._formatScript(eventData.script_.script_);
-}
-
-DebuggerScript.getScripts = function(contextData)
-{
- var result = [];
-
- if (!contextData)
- return result;
- var comma = contextData.indexOf(",");
- if (comma === -1)
- return result;
- // Context data is a string in the following format:
- // ("page"|"injected")","<page id>
- var idSuffix = contextData.substring(comma); // including the comma
-
- var scripts = Debug.scripts();
- for (var i = 0; i < scripts.length; ++i) {
- var script = scripts[i];
- if (script.context_data && script.context_data.lastIndexOf(idSuffix) != -1)
- result.push(DebuggerScript._formatScript(script));
- }
- return result;
-}
-
-DebuggerScript._formatScript = function(script)
-{
- var scriptWorldType = DebuggerScript.ScriptWorldType.MainWorld;
- if (script.context_data && script.context_data.indexOf("injected") == 0)
- scriptWorldType = DebuggerScript.ScriptWorldType.ExtensionsWorld;
- return {
- id: script.id,
- name: script.nameOrSourceURL(),
- source: script.source,
- lineOffset: DebuggerScript._v8ToWebkitLineNumber(script.line_offset),
- lineCount: script.lineCount(),
- scriptWorldType: scriptWorldType
- };
-}
-
-DebuggerScript.setBreakpoint = function(execState, args)
-{
- args.lineNumber = DebuggerScript._webkitToV8LineNumber(args.lineNumber);
- var breakId = Debug.setScriptBreakPointById(args.scriptId, args.lineNumber, 0 /* column */, args.condition);
- if (!args.enabled)
- Debug.disableScriptBreakPoint(breakId);
-
- var locations = Debug.findBreakPointActualLocations(breakId);
- var actualLineNumber = locations.length ? locations[0].line : args.lineNumber;
-
- var key = args.scriptId + ":" + actualLineNumber;
- if (key in DebuggerScript._breakpoints) {
- // Remove old breakpoint.
- Debug.findBreakPoint(DebuggerScript._breakpoints[key], true);
- }
- DebuggerScript._breakpoints[key] = breakId;
- return DebuggerScript._v8ToWebkitLineNumber(actualLineNumber);
-}
-
-DebuggerScript.removeBreakpoint = function(execState, args)
-{
- args.lineNumber = DebuggerScript._webkitToV8LineNumber(args.lineNumber);
- var key = args.scriptId + ":" + args.lineNumber;
- var breakId = DebuggerScript._breakpoints[key];
- if (breakId)
- Debug.findBreakPoint(breakId, true);
- delete DebuggerScript._breakpoints[key];
-}
-
-DebuggerScript.pauseOnExceptionsState = function()
-{
- return DebuggerScript._pauseOnExceptionsState;
-}
-
-DebuggerScript.setPauseOnExceptionsState = function(newState)
-{
- DebuggerScript._pauseOnExceptionsState = newState;
-
- if (DebuggerScript.PauseOnExceptionsState.PauseOnAllExceptions === newState)
- Debug.setBreakOnException();
- else
- Debug.clearBreakOnException();
-
- if (DebuggerScript.PauseOnExceptionsState.PauseOnUncaughtExceptions === newState)
- Debug.setBreakOnUncaughtException();
- else
- Debug.clearBreakOnUncaughtException();
-}
-
-DebuggerScript.currentCallFrame = function(execState, args)
-{
- var frameCount = execState.frameCount();
- if (frameCount === 0)
- return undefined;
-
- var topFrame;
- for (var i = frameCount - 1; i >= 0; i--) {
- var frameMirror = execState.frame(i);
- topFrame = DebuggerScript._frameMirrorToJSCallFrame(frameMirror, topFrame);
- }
- return topFrame;
-}
-
-DebuggerScript.stepIntoStatement = function(execState)
-{
- execState.prepareStep(Debug.StepAction.StepIn, 1);
-}
-
-DebuggerScript.stepOverStatement = function(execState)
-{
- execState.prepareStep(Debug.StepAction.StepNext, 1);
-}
-
-DebuggerScript.stepOutOfFunction = function(execState)
-{
- execState.prepareStep(Debug.StepAction.StepOut, 1);
-}
-
-DebuggerScript.editScriptSource = function(scriptId, newSource)
-{
- var scripts = Debug.scripts();
- var scriptToEdit = null;
- for (var i = 0; i < scripts.length; i++) {
- if (scripts[i].id == scriptId) {
- scriptToEdit = scripts[i];
- break;
- }
- }
- if (!scriptToEdit)
- throw("Script not found");
-
- var changeLog = [];
- Debug.LiveEdit.SetScriptSource(scriptToEdit, newSource, false, changeLog);
- return scriptToEdit.source;
-}
-
-DebuggerScript.clearBreakpoints = function(execState, args)
-{
- for (var key in DebuggerScript._breakpoints) {
- var breakId = DebuggerScript._breakpoints[key];
- Debug.findBreakPoint(breakId, true);
- }
- DebuggerScript._breakpoints = {};
-}
-
-DebuggerScript.setBreakpointsActivated = function(execState, args)
-{
- Debug.debuggerFlags().breakPointsActive.setValue(args.enabled);
-}
-
-DebuggerScript._frameMirrorToJSCallFrame = function(frameMirror, callerFrame)
-{
- // Get function name.
- var func;
- try {
- func = frameMirror.func();
- } catch(e) {
- }
- var functionName;
- if (func)
- functionName = func.name() || func.inferredName();
-
- // Get script ID.
- var script = func.script();
- var sourceID = script && script.id();
-
- // Get line number.
- var line = DebuggerScript._v8ToWebkitLineNumber(frameMirror.sourceLine());
-
- // Get this object.
- var thisObject = frameMirror.details_.receiver();
-
- // Get scope chain array in format: [<scope type>, <scope object>, <scope type>, <scope object>,...]
- var scopeChain = [];
- var scopeType = [];
- for (var i = 0; i < frameMirror.scopeCount(); i++) {
- var scopeMirror = frameMirror.scope(i);
- var scopeObjectMirror = scopeMirror.scopeObject();
- var properties = scopeObjectMirror.properties();
- var scopeObject = {};
- for (var j = 0; j < properties.length; j++)
- scopeObject[properties[j].name()] = properties[j].value_;
- // Reset scope object prototype to null so that the proto properties
- // don't appear in th local scope section.
- scopeObject.__proto__ = null;
- scopeType.push(scopeMirror.scopeType());
- scopeChain.push(scopeObject);
- }
-
- function evaluate(expression) {
- return frameMirror.evaluate(expression, false).value();
- }
-
- return {
- "sourceID": sourceID,
- "line": line,
- "functionName": functionName,
- "type": "function",
- "thisObject": thisObject,
- "scopeChain": scopeChain,
- "scopeType": scopeType,
- "evaluate": evaluate,
- "caller": callerFrame
- };
-}
-
-DebuggerScript._webkitToV8LineNumber = function(line)
-{
- return line - 1;
-};
-
-DebuggerScript._v8ToWebkitLineNumber = function(line)
-{
- return line + 1;
-};
-
-return DebuggerScript;
-
-})();
diff --git a/WebKit/chromium/src/js/DevTools.js b/WebKit/chromium/src/js/DevTools.js
index f55be4e..0c7241d 100644
--- a/WebKit/chromium/src/js/DevTools.js
+++ b/WebKit/chromium/src/js/DevTools.js
@@ -162,7 +162,3 @@ WebInspector.resetToolbarColors = function()
}
-// TODO(yurys): should be removed when eclipse debugger stops using it.
-if (window.RemoteDebuggerAgent) {
- RemoteDebuggerAgent.setContextId = function() {};
-}
diff --git a/WebKit/chromium/src/js/DevToolsHostStub.js b/WebKit/chromium/src/js/DevToolsHostStub.js
deleted file mode 100644
index d3333e2..0000000
--- a/WebKit/chromium/src/js/DevToolsHostStub.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2010 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/**
- * @fileoverview These stubs emulate backend functionality and allows
- * DevTools frontend to function as a standalone web app.
- */
-
-if (!window["RemoteDebuggerCommandExecutor"]) {
- window["RemoteDebuggerCommandExecutor"] = {};
-}
diff --git a/WebKit/chromium/src/js/Tests.js b/WebKit/chromium/src/js/Tests.js
index 2233463..5cebb52 100644
--- a/WebKit/chromium/src/js/Tests.js
+++ b/WebKit/chromium/src/js/Tests.js
@@ -953,230 +953,6 @@ TestSuite.prototype._waitUntilScriptsAreParsed = function(expectedScripts, callb
/**
- * Gets a XPathResult matching given xpath.
- * @param {string} xpath
- * @param {number} resultType
- * @param {Node} opt_ancestor Context node. If not specified documentElement
- * will be used
- * @return {XPathResult} Type of returned value is determined by "resultType" parameter
- */
-
-TestSuite.prototype._evaluateXpath = function(xpath, resultType, opt_ancestor)
-{
- if (!opt_ancestor)
- opt_ancestor = document.documentElement;
- try {
- return document.evaluate(xpath, opt_ancestor, null, resultType, null);
- } catch(e) {
- this.fail('Error in expression: "' + xpath + '".' + e);
- }
-};
-
-
-/**
- * Gets first Node matching given xpath.
- * @param {string} xpath
- * @param {Node} opt_ancestor Context node. If not specified documentElement
- * will be used
- * @return {?Node}
- */
-TestSuite.prototype._findNode = function(xpath, opt_ancestor)
-{
- var result = this._evaluateXpath(xpath, XPathResult.FIRST_ORDERED_NODE_TYPE, opt_ancestor).singleNodeValue;
- this.assertTrue(!!result, "Cannot find node on path: " + xpath);
- return result;
-};
-
-
-/**
- * Gets a text matching given xpath.
- * @param {string} xpath
- * @param {Node} opt_ancestor Context node. If not specified documentElement
- * will be used
- * @return {?string}
- */
-TestSuite.prototype._findText = function(xpath, opt_ancestor)
-{
- var result = this._evaluateXpath(xpath, XPathResult.STRING_TYPE, opt_ancestor).stringValue;
- this.assertTrue(!!result, "Cannot find text on path: " + xpath);
- return result;
-};
-
-
-/**
- * Gets an iterator over nodes matching given xpath.
- * @param {string} xpath
- * @param {Node} opt_ancestor Context node. If not specified, documentElement
- * will be used
- * @return {XPathResult} Iterator over the nodes
- */
-TestSuite.prototype._nodeIterator = function(xpath, opt_ancestor)
-{
- return this._evaluateXpath(xpath, XPathResult.ORDERED_NODE_ITERATOR_TYPE, opt_ancestor);
-};
-
-
-/**
- * Checks the scopeSectionDiv against the expectations.
- * @param {Node} scopeSectionDiv The section div
- * @param {Object} expectations Expectations dictionary
- */
-TestSuite.prototype._checkScopeSectionDiv = function(scopeSectionDiv, expectations)
-{
- var scopeTitle = this._findText('./div[@class="header"]/div[@class="title"]/text()', scopeSectionDiv);
- this.assertEquals(expectations.title, scopeTitle, "Unexpected scope section title.");
- if (!expectations.properties)
- return;
- this.assertTrue(scopeSectionDiv.hasStyleClass("expanded"), 'Section "' + scopeTitle + '" is collapsed.');
-
- var propertyIt = this._nodeIterator("./ol/li", scopeSectionDiv);
- var propertyLi;
- var foundProps = [];
- while (propertyLi = propertyIt.iterateNext()) {
- var name = this._findText('./span[@class="name"]/text()', propertyLi);
- var value = this._findText('./span[@class="value"]/text()', propertyLi);
- this.assertTrue(!!name, 'Invalid variable name: "' + name + '"');
- this.assertTrue(name in expectations.properties, "Unexpected property: " + name);
- this.assertEquals(expectations.properties[name], value, 'Unexpected "' + name + '" property value.');
- delete expectations.properties[name];
- foundProps.push(name + " = " + value);
- }
-
- // Check that all expected properties were found.
- for (var p in expectations.properties)
- this.fail('Property "' + p + '" was not found in scope "' + scopeTitle + '". Found properties: "' + foundProps.join(",") + '"');
-};
-
-
-/**
- * Expands scope sections matching the filter and invokes the callback on
- * success.
- * @param {function(WebInspector.ObjectPropertiesSection, number):boolean}
- * filter
- * @param {Function} callback
- */
-TestSuite.prototype._expandScopeSections = function(filter, callback)
-{
- var sections = WebInspector.currentPanel.sidebarPanes.scopechain.sections;
-
- var toBeUpdatedCount = 0;
- function updateListener() {
- --toBeUpdatedCount;
- if (toBeUpdatedCount === 0) {
- // Report when all scopes are expanded and populated.
- callback();
- }
- }
-
- // Global scope is always the last one.
- for (var i = 0; i < sections.length - 1; i++) {
- var section = sections[i];
- if (!filter(sections, i))
- continue;
- ++toBeUpdatedCount;
- var populated = section.populated;
-
- this._hookGetPropertiesCallback(updateListener,
- function() {
- section.expand();
- if (populated) {
- // Make sure "updateProperties" callback will be called at least once
- // after it was overridden.
- section.update();
- }
- });
- }
-};
-
-
-/**
- * Tests that scopes can be expanded and contain expected data.
- */
-TestSuite.prototype.testExpandScope = function()
-{
- this.showPanel("scripts");
- var test = this;
-
- this._executeCodeWhenScriptsAreParsed("handleClick()", ["debugger_closure.html"]);
-
- this._waitForScriptPause(
- {
- functionsOnStack: ["innerFunction", "handleClick", ""],
- lineNumber: 8,
- lineText: " debugger;"
- },
- expandAllSectionsExceptGlobal);
-
- // Expanding Global scope takes for too long so we skeep it.
- function expandAllSectionsExceptGlobal() {
- test._expandScopeSections(function(sections, i) {
- return i < sections.length - 1;
- },
- examineScopes /* When all scopes are expanded and populated check them. */);
- }
-
- // Check scope sections contents.
- function examineScopes() {
- var scopeVariablesSection = test._findNode('//div[@id="scripts-sidebar"]/div[div[@class="title"]/text()="Scope Variables"]');
- var expectedScopes = [
- {
- title: "Local",
- properties: {
- x:"2009",
- innerFunctionLocalVar:"2011",
- "this": "DOMWindow",
- }
- },
- {
- title: "Closure",
- properties: {
- n: '"TextParam"',
- makeClosureLocalVar: '"local.TextParam"',
- }
- },
- {
- title: "Global",
- },
- ];
- var it = test._nodeIterator('./div[@class="body"]/div', scopeVariablesSection);
- var scopeIndex = 0;
- var scopeDiv;
- while (scopeDiv = it.iterateNext()) {
- test.assertTrue(scopeIndex < expectedScopes.length, "Too many scopes.");
- test._checkScopeSectionDiv(scopeDiv, expectedScopes[scopeIndex]);
- ++scopeIndex;
- }
- test.assertEquals(expectedScopes.length, scopeIndex, "Unexpected number of scopes.");
-
- test.releaseControl();
- }
-
- test.takeControl();
-};
-
-
-/**
- * Returns child tree element for a property with given name.
- * @param {TreeElement} parent Parent tree element.
- * @param {string} childName
- * @param {string} objectPath Path to the object. Will be printed in the case
- * of failure.
- * @return {TreeElement}
- */
-TestSuite.prototype._findChildProperty = function(parent, childName, objectPath)
-{
- var children = parent.children;
- for (var i = 0; i < children.length; i++) {
- var treeElement = children[i];
- var property = treeElement.property;
- if (property.name === childName)
- return treeElement;
- }
- this.fail('Cannot find property "' + childName + '" in ' + objectPath);
-};
-
-
-/**
* Executes the 'code' with InjectedScriptAccess.getProperties overriden
* so that all callbacks passed to InjectedScriptAccess.getProperties are
* extended with the "hook".