model.canEditScriptSource = function() { return true; };
return model;
}
- function addUISouceCode(model, url)
+ function createUISouceCode(url)
{
var uiSourceCode = {
url: url,
messages: []
};
uiSourceCode.__proto__ = WebInspector.Object.prototype;
- model.dispatchEventToListeners(WebInspector.DebuggerPresentationModel.Events.UISourceCodeAdded, uiSourceCode);
return uiSourceCode;
}
{
var model = createDebuggerPresentationModelMock();
var panel = new WebInspector.ScriptsPanel(model);
+ panel.show();
- addUISouceCode(model, "foo.js");
- addUISouceCode(model, "bar.js");
- addUISouceCode(model, "baz.js");
+ panel._uiSourceCodeAdded({ data: createUISouceCode("foo.js") });
+ panel._uiSourceCodeAdded({ data: createUISouceCode("bar.js") });
+ panel._uiSourceCodeAdded({ data: createUISouceCode("baz.js") });
InspectorTest.addResult("Dump files select:");
var select = panel._filesSelectElement;
// Select "baz.js".
select.selectedIndex = 1;
panel._filesSelectChanged();
+ panel.detach();
next();
},
{
var model = createDebuggerPresentationModelMock();
var panel = new WebInspector.ScriptsPanel(model);
+ panel.show();
var files = ["index.html", "script1.js", "script2.js", "script3.js"];
for (var i = 0; i < files.length; ++i)
- addUISouceCode(model, files[i]);
+ panel._uiSourceCodeAdded({ data: createUISouceCode(files[i]) });
function checkCurrentlySelectedFileName(fileName)
{
panel.backButton.click();
checkCurrentlySelectedFileName("index.html");
+ panel.detach();
next();
},
{
var model = createDebuggerPresentationModelMock();
var panel = new WebInspector.ScriptsPanel(model);
+ panel.show();
var rootURL = "http://localhost:8080/LayoutTests/inspector/debugger/";
var nextId = 0;
var tooltip = option.title.replace(rootURL, "<root>/");
InspectorTest.addResult(text + (tooltip ? "(" + tooltip + ")" : ""));
}
+
+ panel.detach();
next();
},
{
var model = createDebuggerPresentationModelMock();
var panel = new WebInspector.ScriptsPanel(model);
+ panel.show();
+
+ panel._uiSourceCodeAdded({ data: createUISouceCode("foo.js") });
+ var compiledSourceCode = createUISouceCode("compiled.js");
+ panel._uiSourceCodeAdded({ data: compiledSourceCode });
+
+ InspectorTest.assertEquals(2, panel._filesSelectElement.length);
+
+ // Plug compiler source mapping.
+ var source1SourceCode = createUISouceCode("source1.js");
+ var source2SourceCode = createUISouceCode("source2.js");
+ panel._uiSourceCodeReplaced({ data: { oldUISourceCodeList: [compiledSourceCode], uiSourceCodeList: [source1SourceCode, source2SourceCode] }});
+
+ InspectorTest.assertEquals(3, panel._filesSelectElement.length);
+ showSourceFrame(panel, "source2.js");
+ showSourceFrame(panel, "source1.js");
+
+ // Unplug compiler source mapping.
+ panel._uiSourceCodeReplaced({ data: { oldUISourceCodeList: [source1SourceCode, source2SourceCode], uiSourceCodeList: [compiledSourceCode] }});
+ InspectorTest.assertEquals(2, panel._filesSelectElement.length);
- addUISouceCode(model, "foo.js");
- var uiSourceCode = addUISouceCode(model, "bar.js");
- panel._uiSourceCodeReplaced({ data: { oldUISourceCodeList: [uiSourceCode], uiSourceCodeList: [uiSourceCode] }});
- showSourceFrame(panel, "bar.js");
+ panel.detach();
next();
}
]);