Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(91)

Side by Side Diff: third_party/WebKit/LayoutTests/inspector/jump-to-previous-editing-location.html

Issue 2263073003: DevTools: Prepare CodeMirrorTextEditor for split into SourcesTextEditor (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nits Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <html> 1 <html>
2 <head> 2 <head>
3 <script src="../http/tests/inspector/inspector-test.js"></script> 3 <script src="../http/tests/inspector/inspector-test.js"></script>
4 <script src="../http/tests/inspector/console-test.js"></script> 4 <script src="../http/tests/inspector/console-test.js"></script>
5 <script src="../http/tests/inspector/workspace-test.js"></script> 5 <script src="../http/tests/inspector/workspace-test.js"></script>
6 <script src="../http/tests/inspector/debugger-test.js"></script> 6 <script src="../http/tests/inspector/debugger-test.js"></script>
7 <script src="resources/example-fileset-for-test.js"></script> 7 <script src="resources/example-fileset-for-test.js"></script>
8 <script src="editor/editor-test.js"></script> 8 <script src="editor/editor-test.js"></script>
9 <script> 9 <script>
10 function test() 10 function test()
11 { 11 {
12 var panel = WebInspector.panels.sources; 12 var panel = WebInspector.panels.sources;
13 var sourcesView = panel._sourcesView; 13 var sourcesView = panel._sourcesView;
14 var historyManager = sourcesView._historyManager; 14 var historyManager = sourcesView._historyManager;
15 var editorContainer = sourcesView._editorContainer; 15 var editorContainer = sourcesView._editorContainer;
16 16
17 function rollback() 17 function rollback()
18 { 18 {
19 historyManager.rollback(); 19 historyManager.rollback();
20 } 20 }
21 21
22 function rollover() 22 function rollover()
23 { 23 {
24 historyManager.rollover(); 24 historyManager.rollover();
25 } 25 }
26 26
27 function dumpSelection(editor, label) 27 function dumpSelection(label)
28 { 28 {
29 var selection = editor.selection(); 29 var selection = panel.visibleView.textEditor.selection();
30 var label = "<" + label + ">"; 30 var label = "<" + label + ">";
31 var fileName = "[" + editor._url.split("/").pop() + "]"; 31 var fileName = "[" + panel.visibleView._url.split("/").pop() + "]";
32 var selectionText = ""; 32 var selectionText = "";
33 if (selection.isEmpty()) 33 if (selection.isEmpty())
34 selectionText = "line: " + selection.startLine + " column: " + selec tion.startColumn; 34 selectionText = "line: " + selection.startLine + " column: " + selec tion.startColumn;
35 else 35 else
36 selectionText = "(NOT EMPTY): " + selection.toString(); 36 selectionText = "(NOT EMPTY): " + selection.toString();
37 InspectorTest.addResult(label + " " + selectionText + " " + fileName); 37 InspectorTest.addResult(label + " " + selectionText + " " + fileName);
38 } 38 }
39 39
40 function eventSenderClickAtEditor(editor, lineNumber, columnNumber) 40 function eventSenderClickAtEditor(editor, lineNumber, columnNumber)
41 { 41 {
42 editor.scrollToLine(lineNumber); 42 editor.scrollToLine(lineNumber);
43 var coordinates = editor.cursorPositionToCoordinates(lineNumber, columnN umber); 43 var coordinates = editor.cursorPositionToCoordinates(lineNumber, columnN umber);
44 eventSender.mouseMoveTo(coordinates.x, coordinates.y); 44 eventSender.mouseMoveTo(coordinates.x, coordinates.y);
45 eventSender.mouseDown(); 45 eventSender.mouseDown();
46 eventSender.mouseUp(); 46 eventSender.mouseUp();
47 dumpSelection(editor, "Mouse click (" + lineNumber + ", " + columnNumber + ")"); 47 dumpSelection("Mouse click (" + lineNumber + ", " + columnNumber + ")");
48 } 48 }
49 49
50 function clickAndDump(editor, lines, columns) 50 function clickAndDump(editor, lines, columns)
51 { 51 {
52 for (var i = 0; i < lines.length; ++i) { 52 for (var i = 0; i < lines.length; ++i) {
53 var lineNumber = lines[i]; 53 var lineNumber = lines[i];
54 var columnNumber = columns[i]; 54 var columnNumber = columns[i];
55 var originSelection = editor.selection(); 55 var originSelection = editor.selection();
56 editor.setSelection(WebInspector.TextRange.createFromLocation(lineNu mber, columnNumber)); 56 editor.setSelection(WebInspector.TextRange.createFromLocation(lineNu mber, columnNumber));
57 editor._delegate.onJumpToPosition(originSelection, editor.selection( )); 57 editor._delegate.onJumpToPosition(originSelection, editor.selection( ));
58 dumpSelection(editor, "Mouse click (" + lineNumber + ", " + columnNu mber + ")"); 58 dumpSelection("Mouse click (" + lineNumber + ", " + columnNumber + " )");
59 } 59 }
60 } 60 }
61 61
62 InspectorTest.runTestSuite([ 62 InspectorTest.runTestSuite([
63 function testSimpleMovements(next) 63 function testSimpleMovements(next)
64 { 64 {
65 InspectorTest.showScriptSource("example-fileset-for-test.js", onCont entLoaded); 65 InspectorTest.showScriptSource("example-fileset-for-test.js", onCont entLoaded);
66 66
67 function onContentLoaded() 67 function onContentLoaded()
68 { 68 {
69 var editor = panel.visibleView.textEditor; 69 var editor = panel.visibleView.textEditor;
70 dumpSelection(editor, "Initial position"); 70 dumpSelection("Initial position");
71 eventSenderClickAtEditor(editor, 4, 7, true); 71 eventSenderClickAtEditor(editor, 4, 7, true);
72 72
73 InspectorTest.typeIn(editor, "\nSome more text here", step2); 73 InspectorTest.typeIn(editor, "\nSome more text here", step2);
74 } 74 }
75 75
76 function step2() { 76 function step2() {
77 var editor = panel.visibleView.textEditor; 77 var editor = panel.visibleView.textEditor;
78 dumpSelection(editor, "Typed in some text"); 78 dumpSelection("Typed in some text");
79 79
80 rollback(); 80 rollback();
81 dumpSelection(editor, "Rolled back"); 81 dumpSelection("Rolled back");
82 InspectorTest.typeIn(editor, "\nSome more text here as well\n", step3); 82 InspectorTest.typeIn(editor, "\nSome more text here as well\n", step3);
83 } 83 }
84 84
85 function step3() { 85 function step3() {
86 var editor = panel.visibleView.textEditor; 86 var editor = panel.visibleView.textEditor;
87 dumpSelection(editor, "Typed in some text"); 87 dumpSelection("Typed in some text");
88 88
89 rollover(); 89 rollover();
90 dumpSelection(editor, "Rolled over"); 90 dumpSelection("Rolled over");
91 next(); 91 next();
92 } 92 }
93 }, 93 },
94 94
95 function testSequentialJumps(next) 95 function testSequentialJumps(next)
96 { 96 {
97 var editor = panel.visibleView.textEditor; 97 var editor = panel.visibleView.textEditor;
98 // Hide inspector view to significantly speed up following tests fro m testsuite. 98 // Hide inspector view to significantly speed up following tests fro m testsuite.
99 InspectorTest.hideInspectorView(); 99 InspectorTest.hideInspectorView();
100 const jumpsToDo = 4; 100 const jumpsToDo = 4;
101 clickAndDump(editor, [10, 11, 12, 13], [3, 4, 5, 6]); 101 clickAndDump(editor, [10, 11, 12, 13], [3, 4, 5, 6]);
102 102
103 for (var i = 0; i < jumpsToDo; ++i) { 103 for (var i = 0; i < jumpsToDo; ++i) {
104 rollback(); 104 rollback();
105 dumpSelection(editor, "Rolled back"); 105 dumpSelection("Rolled back");
106 } 106 }
107 for (var i = 0; i < jumpsToDo; ++i) { 107 for (var i = 0; i < jumpsToDo; ++i) {
108 rollover(); 108 rollover();
109 dumpSelection(editor, "Rolled over"); 109 dumpSelection("Rolled over");
110 } 110 }
111 next(); 111 next();
112 }, 112 },
113 113
114 function testDeletePreviousJumpLocations(next) 114 function testDeletePreviousJumpLocations(next)
115 { 115 {
116 var editor = panel.visibleView.textEditor; 116 var editor = panel.visibleView.textEditor;
117 editor.editRange(new WebInspector.TextRange(9, 0, 15, 0), ""); 117 editor.editRange(new WebInspector.TextRange(9, 0, 15, 0), "");
118 dumpSelection(editor, "Removed lines from 9 to 15"); 118 dumpSelection("Removed lines from 9 to 15");
119 rollback(); 119 rollback();
120 dumpSelection(editor, "Rolled back"); 120 dumpSelection("Rolled back");
121 rollover(); 121 rollover();
122 dumpSelection(editor, "Rolled over"); 122 dumpSelection("Rolled over");
123 next(); 123 next();
124 }, 124 },
125 125
126 function testDeleteNextJumpLocations(next) 126 function testDeleteNextJumpLocations(next)
127 { 127 {
128 var editor = panel.visibleView.textEditor; 128 var editor = panel.visibleView.textEditor;
129 const jumpsToDo = 4; 129 const jumpsToDo = 4;
130 clickAndDump(editor, [10, 11, 12, 13], [3, 4, 5, 6]); 130 clickAndDump(editor, [10, 11, 12, 13], [3, 4, 5, 6]);
131 131
132 for (var i = 0; i < jumpsToDo; ++i) 132 for (var i = 0; i < jumpsToDo; ++i)
133 rollback(); 133 rollback();
134 dumpSelection(editor, "Rolled back 4 times"); 134 dumpSelection("Rolled back 4 times");
135 editor.editRange(new WebInspector.TextRange(9, 0, 11, 0), ""); 135 editor.editRange(new WebInspector.TextRange(9, 0, 11, 0), "");
136 dumpSelection(editor, "Removed lines from 9 to 11"); 136 dumpSelection("Removed lines from 9 to 11");
137 rollover(); 137 rollover();
138 dumpSelection(editor, "Rolled over"); 138 dumpSelection("Rolled over");
139 next(); 139 next();
140 }, 140 },
141 141
142 function testCrossFileJump(next) 142 function testCrossFileJump(next)
143 { 143 {
144 InspectorTest.showScriptSource("workspace-test.js", onContentLoaded) ; 144 InspectorTest.showScriptSource("workspace-test.js", onContentLoaded) ;
145 function onContentLoaded() 145 function onContentLoaded()
146 { 146 {
147 var editor = panel.visibleView.textEditor; 147 var editor = panel.visibleView.textEditor;
148 dumpSelection(editor, "Opened workspace-test.js"); 148 dumpSelection("Opened workspace-test.js");
149 clickAndDump(editor, [10, 11], [1, 1]); 149 clickAndDump(editor, [10, 11], [1, 1]);
150 for (var i = 0; i < 4; ++i) { 150 for (var i = 0; i < 4; ++i) {
151 rollback(); 151 rollback();
152 dumpSelection(panel.visibleView.textEditor, "Rolled back"); 152 dumpSelection("Rolled back");
153 } 153 }
154 for (var i = 0; i < 4; ++i) { 154 for (var i = 0; i < 4; ++i) {
155 rollover(); 155 rollover();
156 dumpSelection(panel.visibleView.textEditor, "Rolled over"); 156 dumpSelection("Rolled over");
157 } 157 }
158 next(); 158 next();
159 } 159 }
160 }, 160 },
161 161
162 function testCloseCrossFile(next) 162 function testCloseCrossFile(next)
163 { 163 {
164 var selectedTab = editorContainer._tabbedPane.selectedTabId; 164 var selectedTab = editorContainer._tabbedPane.selectedTabId;
165 editorContainer._tabbedPane.closeTab(selectedTab); 165 editorContainer._tabbedPane.closeTab(selectedTab);
166 dumpSelection(panel.visibleView.textEditor, "Close active tab"); 166 dumpSelection("Close active tab");
167 for (var i = 0; i < 1; ++i) { 167 for (var i = 0; i < 1; ++i) {
168 rollback(); 168 rollback();
169 dumpSelection(panel.visibleView.textEditor, "Rolled back"); 169 dumpSelection("Rolled back");
170 } 170 }
171 for (var i = 0; i < 3; ++i) { 171 for (var i = 0; i < 3; ++i) {
172 rollover(); 172 rollover();
173 dumpSelection(panel.visibleView.textEditor, "Rolled over"); 173 dumpSelection("Rolled over");
174 } 174 }
175 next(); 175 next();
176 }, 176 },
177 177
178 function testHistoryDepth(next) 178 function testHistoryDepth(next)
179 { 179 {
180 var lines = []; 180 var lines = [];
181 var columns = []; 181 var columns = [];
182 const jumpsAmount = WebInspector.EditingLocationHistoryManager.Histo ryDepth; 182 const jumpsAmount = WebInspector.EditingLocationHistoryManager.Histo ryDepth;
183 for(var i = 0; i < jumpsAmount; ++i) { 183 for(var i = 0; i < jumpsAmount; ++i) {
184 lines.push(i + 10); 184 lines.push(i + 10);
185 columns.push(7); 185 columns.push(7);
186 } 186 }
187 var editor = panel.visibleView.textEditor; 187 var editor = panel.visibleView.textEditor;
188 clickAndDump(editor, lines, columns); 188 clickAndDump(editor, lines, columns);
189 for (var i = 0; i < jumpsAmount; ++i) { 189 for (var i = 0; i < jumpsAmount; ++i) {
190 rollback(); 190 rollback();
191 dumpSelection(editor, "Rolled back"); 191 dumpSelection("Rolled back");
192 } 192 }
193 next(); 193 next();
194 }, 194 },
195 195
196 function testInFileSearch(next) 196 function testInFileSearch(next)
197 { 197 {
198 var searchableView = panel.searchableView(); 198 var searchableView = panel.searchableView();
199 199
200 dumpSelection(panel.visibleView.textEditor, "Before searching"); 200 dumpSelection("Before searching");
201 201
202 searchableView.showSearchField(); 202 searchableView.showSearchField();
203 searchableView._searchInputElement.value = "generate_"; 203 searchableView._searchInputElement.value = "generate_";
204 searchableView._performSearch(true, true); 204 searchableView._performSearch(true, true);
205 for (var i = 0; i < 3; ++i) 205 for (var i = 0; i < 3; ++i)
206 searchableView.handleFindNextShortcut(); 206 searchableView.handleFindNextShortcut();
207 searchableView.handleCancelSearchShortcut(); 207 searchableView.handleCancelSearchShortcut();
208 208
209 dumpSelection(panel.visibleView.textEditor, "After searching"); 209 dumpSelection("After searching");
210 rollback(); 210 rollback();
211 dumpSelection(panel.visibleView.textEditor, "Rolled back"); 211 dumpSelection("Rolled back");
212 rollover(); 212 rollover();
213 dumpSelection(panel.visibleView.textEditor, "Rolled over"); 213 dumpSelection("Rolled over");
214 next(); 214 next();
215 }, 215 },
216 216
217 function testShowAnchorLocation(next) 217 function testShowAnchorLocation(next)
218 { 218 {
219 dumpSelection(panel.visibleView.textEditor, "Before switching to oth er panel"); 219 dumpSelection("Before switching to other panel");
220 InspectorTest.waitForScriptSource("workspace-test.js", onScriptSourc e); 220 InspectorTest.waitForScriptSource("workspace-test.js", onScriptSourc e);
221 function onScriptSource(uiSourceCode) 221 function onScriptSource(uiSourceCode)
222 { 222 {
223 var linkifier = new WebInspector.Linkifier(); 223 var linkifier = new WebInspector.Linkifier();
224 var anchorURI = WebInspector.networkMapping.networkURL(uiSourceC ode); 224 var anchorURI = WebInspector.networkMapping.networkURL(uiSourceC ode);
225 var anchor = linkifier.linkifyScriptLocation(WebInspector.target Manager.mainTarget(), null, anchorURI, 10, 1); 225 var anchor = linkifier.linkifyScriptLocation(WebInspector.target Manager.mainTarget(), null, anchorURI, 10, 1);
226 WebInspector.Revealer.revealPromise(anchor[WebInspector.Linkifie r._uiLocationSymbol]).then(function() { 226 WebInspector.Revealer.revealPromise(anchor[WebInspector.Linkifie r._uiLocationSymbol]).then(function() {
227 InspectorTest.addResult("Selection: " + panel.visibleView.te xtEditor.selection().toString()); 227 InspectorTest.addResult("Selection: " + panel.visibleView.te xtEditor.selection().toString());
228 dumpSelection(panel.visibleView.textEditor, "Showed anchor i n " + anchorURI.split("/").pop() + " with line 333 column 3"); 228 dumpSelection("Showed anchor in " + anchorURI.split("/").pop () + " with line 333 column 3");
229 rollback(); 229 rollback();
230 dumpSelection(panel.visibleView.textEditor, "Rolled back"); 230 dumpSelection("Rolled back");
231 rollover(); 231 rollover();
232 dumpSelection(panel.visibleView.textEditor, "Rolled over"); 232 dumpSelection("Rolled over");
233 next(); 233 next();
234 }); 234 });
235 } 235 }
236 }, 236 },
237 237
238 function testShowUISourceCode(next) 238 function testShowUISourceCode(next)
239 { 239 {
240 dumpSelection(panel.visibleView.textEditor, "Initial state"); 240 dumpSelection("Initial state");
241 241
242 InspectorTest.waitForScriptSource("example-fileset-for-test.js", onS criptSourceLoaded); 242 InspectorTest.waitForScriptSource("example-fileset-for-test.js", onS criptSourceLoaded);
243 function onScriptSourceLoaded(uiSourceCode) 243 function onScriptSourceLoaded(uiSourceCode)
244 { 244 {
245 var jumps = [20, 10, 30]; 245 var jumps = [20, 10, 30];
246 for (var i = 0; i < jumps.length; ++i) { 246 for (var i = 0; i < jumps.length; ++i) {
247 panel.showUISourceCode(uiSourceCode, jumps[i]); 247 panel.showUISourceCode(uiSourceCode, jumps[i]);
248 dumpSelection(panel.visibleView.textEditor, "jump to line " + jumps[i]); 248 dumpSelection("jump to line " + jumps[i]);
249 } 249 }
250 panel.showUISourceCode(uiSourceCode, 40, 10); 250 panel.showUISourceCode(uiSourceCode, 40, 10);
251 dumpSelection(panel.visibleView.textEditor, "highlight line 40") ; 251 dumpSelection("highlight line 40");
252 for (var i = 0; i < jumps.length + 1; ++i) { 252 for (var i = 0; i < jumps.length + 1; ++i) {
253 rollback(); 253 rollback();
254 dumpSelection(panel.visibleView.textEditor, "rollback"); 254 dumpSelection("rollback");
255 } 255 }
256 next(); 256 next();
257 } 257 }
258 } 258 }
259 ]); 259 ]);
260 }; 260 };
261 </script> 261 </script>
262 </head> 262 </head>
263 <body onload="runTest()"> 263 <body onload="runTest()">
264 <p>Tests that jumping to previous location works as intended.</p> 264 <p>Tests that jumping to previous location works as intended.</p>
265 </body> 265 </body>
266 </html> 266 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698