| OLD | NEW |
| 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 | 4 |
| 5 <script> | 5 <script> |
| 6 | 6 |
| 7 function test() | 7 function test() |
| 8 { | 8 { |
| 9 function createScriptMock(url, startLine, startColumn, isContentScript, sour
ce) | 9 function createScriptMock(url, startLine, startColumn, isContentScript, sour
ce) |
| 10 { | 10 { |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); | 105 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); |
| 106 var rawSourceCode = createRawSourceCode(script, null); | 106 var rawSourceCode = createRawSourceCode(script, null); |
| 107 | 107 |
| 108 var sourceMapping = rawSourceCode.sourceMapping; | 108 var sourceMapping = rawSourceCode.sourceMapping; |
| 109 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().lengt
h); | 109 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().lengt
h); |
| 110 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; | 110 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; |
| 111 InspectorTest.assertEquals("foo.js", uiSourceCode.url); | 111 InspectorTest.assertEquals("foo.js", uiSourceCode.url); |
| 112 InspectorTest.assertEquals(true, uiSourceCode.isContentScript); | 112 InspectorTest.assertEquals(true, uiSourceCode.isContentScript); |
| 113 InspectorTest.assertEquals(rawSourceCode, uiSourceCode.rawSourceCode
); | 113 InspectorTest.assertEquals(rawSourceCode, uiSourceCode.rawSourceCode
); |
| 114 checkUILocation(uiSourceCode, 0, 5, sourceMapping.rawLocationToUILoc
ation(createRawLocation(0, 5))); | 114 checkUILocation(uiSourceCode, 0, 5, sourceMapping.rawLocationToUILoc
ation(createRawLocation(0, 5))); |
| 115 checkRawLocation(script, 10, 0, sourceMapping.uiLocationToRawLocatio
n(uiSourceCode, 10)); | 115 checkRawLocation(script, 10, 0, sourceMapping.uiLocationToRawLocatio
n(uiSourceCode, 10, 0)); |
| 116 uiSourceCode.requestContent(didRequestContent); | 116 uiSourceCode.requestContent(didRequestContent); |
| 117 | 117 |
| 118 function didRequestContent(mimeType, content) | 118 function didRequestContent(mimeType, content) |
| 119 { | 119 { |
| 120 InspectorTest.assertEquals("text/javascript", mimeType); | 120 InspectorTest.assertEquals("text/javascript", mimeType); |
| 121 InspectorTest.assertEquals("<script source>", content); | 121 InspectorTest.assertEquals("<script source>", content); |
| 122 next(); | 122 next(); |
| 123 } | 123 } |
| 124 }, | 124 }, |
| 125 | 125 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 uiSourceCode.requestContent(didRequestContent); | 171 uiSourceCode.requestContent(didRequestContent); |
| 172 | 172 |
| 173 function didRequestContent(mimeType, content) | 173 function didRequestContent(mimeType, content) |
| 174 { | 174 { |
| 175 InspectorTest.assertEquals(mimeType, "text/html"); | 175 InspectorTest.assertEquals(mimeType, "text/html"); |
| 176 InspectorTest.assertEquals("<resource content>", content); | 176 InspectorTest.assertEquals("<resource content>", content); |
| 177 | 177 |
| 178 rawSourceCode.addScript(script2); | 178 rawSourceCode.addScript(script2); |
| 179 rawSourceCode.forceUpdateSourceMapping(); | 179 rawSourceCode.forceUpdateSourceMapping(); |
| 180 checkUILocation(uiSourceCode, 1, 20, sourceMapping.rawLocationTo
UILocation(createRawLocation(1, 20))); | 180 checkUILocation(uiSourceCode, 1, 20, sourceMapping.rawLocationTo
UILocation(createRawLocation(1, 20))); |
| 181 checkRawLocation(script1, 1, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCode, 1)); | 181 checkRawLocation(script1, 1, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCode, 1, 0)); |
| 182 checkRawLocation(script2, 6, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCode, 6)); | 182 checkRawLocation(script2, 6, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCode, 6, 0)); |
| 183 | 183 |
| 184 next(); | 184 next(); |
| 185 } | 185 } |
| 186 }, | 186 }, |
| 187 | 187 |
| 188 function testForceUpdateSourceMapping(next) | 188 function testForceUpdateSourceMapping(next) |
| 189 { | 189 { |
| 190 var script1 = createScriptMock("index.html", 0, 10, false, "<script
source 1>"); | 190 var script1 = createScriptMock("index.html", 0, 10, false, "<script
source 1>"); |
| 191 var script2 = createScriptMock("index.html", 0, 45, false, "<script
source 2>"); | 191 var script2 = createScriptMock("index.html", 0, 45, false, "<script
source 2>"); |
| 192 var script3 = createScriptMock("index.html", 1, 10, false, "<script
source 3>"); | 192 var script3 = createScriptMock("index.html", 1, 10, false, "<script
source 3>"); |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 257 function testFormattingWithFinishedResource(next) | 257 function testFormattingWithFinishedResource(next) |
| 258 { | 258 { |
| 259 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); | 259 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); |
| 260 var resource = createFinishedResourceMock("script", "<resource conte
nt>"); | 260 var resource = createFinishedResourceMock("script", "<resource conte
nt>"); |
| 261 var rawSourceCode = createRawSourceCode(script, resource, false); | 261 var rawSourceCode = createRawSourceCode(script, resource, false); |
| 262 | 262 |
| 263 var sourceMapping = rawSourceCode.sourceMapping; | 263 var sourceMapping = rawSourceCode.sourceMapping; |
| 264 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().lengt
h); | 264 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().lengt
h); |
| 265 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; | 265 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; |
| 266 checkUILocation(uiSourceCode, 1, 2, sourceMapping.rawLocationToUILoc
ation(createRawLocation(1, 2))); | 266 checkUILocation(uiSourceCode, 1, 2, sourceMapping.rawLocationToUILoc
ation(createRawLocation(1, 2))); |
| 267 checkRawLocation(script, 2, 0, sourceMapping.uiLocationToRawLocation
(uiSourceCode, 2)); | 267 checkRawLocation(script, 2, 0, sourceMapping.uiLocationToRawLocation
(uiSourceCode, 2, 0)); |
| 268 uiSourceCode.requestContent(didRequestContent); | 268 uiSourceCode.requestContent(didRequestContent); |
| 269 | 269 |
| 270 function didRequestContent(mimeType, content) | 270 function didRequestContent(mimeType, content) |
| 271 { | 271 { |
| 272 InspectorTest.assertEquals("text/javascript", mimeType); | 272 InspectorTest.assertEquals("text/javascript", mimeType); |
| 273 InspectorTest.assertEquals("<resource content>", content); | 273 InspectorTest.assertEquals("<resource content>", content); |
| 274 | 274 |
| 275 rawSourceCode.setFormatted(true); | 275 rawSourceCode.setFormatted(true); |
| 276 waitForSourceMappingEvent(rawSourceCode, requestFormattedContent
); | 276 waitForSourceMappingEvent(rawSourceCode, requestFormattedContent
); |
| 277 rawSourceCode._formatter.finish(); | 277 rawSourceCode._formatter.finish(); |
| 278 } | 278 } |
| 279 | 279 |
| 280 function requestFormattedContent() | 280 function requestFormattedContent() |
| 281 { | 281 { |
| 282 var sourceMapping = rawSourceCode.sourceMapping; | 282 var sourceMapping = rawSourceCode.sourceMapping; |
| 283 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); | 283 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); |
| 284 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; | 284 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; |
| 285 checkUILocation(uiSourceCode, 2, 4, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); | 285 checkUILocation(uiSourceCode, 2, 4, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); |
| 286 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2)); | 286 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2, 0)); |
| 287 uiSourceCode.requestContent(didRequestFormattedContent); | 287 uiSourceCode.requestContent(didRequestFormattedContent); |
| 288 } | 288 } |
| 289 | 289 |
| 290 function didRequestFormattedContent(mimeType, content) | 290 function didRequestFormattedContent(mimeType, content) |
| 291 { | 291 { |
| 292 InspectorTest.assertEquals(mimeType, "text/javascript"); | 292 InspectorTest.assertEquals(mimeType, "text/javascript"); |
| 293 InspectorTest.assertEquals("<formatted> <resource content>", con
tent); | 293 InspectorTest.assertEquals("<formatted> <resource content>", con
tent); |
| 294 | 294 |
| 295 waitForSourceMappingEvent(rawSourceCode, requestNotFormattedCont
ent); | 295 waitForSourceMappingEvent(rawSourceCode, requestNotFormattedCont
ent); |
| 296 rawSourceCode.setFormatted(false); | 296 rawSourceCode.setFormatted(false); |
| 297 } | 297 } |
| 298 | 298 |
| 299 function requestNotFormattedContent() | 299 function requestNotFormattedContent() |
| 300 { | 300 { |
| 301 var sourceMapping = rawSourceCode.sourceMapping; | 301 var sourceMapping = rawSourceCode.sourceMapping; |
| 302 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); | 302 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); |
| 303 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; | 303 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; |
| 304 checkUILocation(uiSourceCode, 1, 2, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); | 304 checkUILocation(uiSourceCode, 1, 2, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); |
| 305 checkRawLocation(script, 2, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2)); | 305 checkRawLocation(script, 2, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2, 0)); |
| 306 uiSourceCode.requestContent(didRequestNotFormattedContent); | 306 uiSourceCode.requestContent(didRequestNotFormattedContent); |
| 307 } | 307 } |
| 308 | 308 |
| 309 function didRequestNotFormattedContent(mimeType, content) | 309 function didRequestNotFormattedContent(mimeType, content) |
| 310 { | 310 { |
| 311 InspectorTest.assertEquals("text/javascript", mimeType); | 311 InspectorTest.assertEquals("text/javascript", mimeType); |
| 312 InspectorTest.assertEquals("<resource content>", content); | 312 InspectorTest.assertEquals("<resource content>", content); |
| 313 | 313 |
| 314 next(); | 314 next(); |
| 315 } | 315 } |
| 316 }, | 316 }, |
| 317 | 317 |
| 318 function testFormattingWithPendingResource(next) | 318 function testFormattingWithPendingResource(next) |
| 319 { | 319 { |
| 320 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); | 320 var script = createScriptMock("foo.js", 0, 0, true, "<script source>
"); |
| 321 var resource = createPendingResourceMock("script", "<resource conten
t>"); | 321 var resource = createPendingResourceMock("script", "<resource conten
t>"); |
| 322 var rawSourceCode = createRawSourceCode(script, resource, true); | 322 var rawSourceCode = createRawSourceCode(script, resource, true); |
| 323 | 323 |
| 324 InspectorTest.assertTrue(!rawSourceCode.sourceMapping); | 324 InspectorTest.assertTrue(!rawSourceCode.sourceMapping); |
| 325 resource.finish(); | 325 resource.finish(); |
| 326 waitForSourceMappingEvent(rawSourceCode, checkMapping); | 326 waitForSourceMappingEvent(rawSourceCode, checkMapping); |
| 327 rawSourceCode._formatter.finish(); | 327 rawSourceCode._formatter.finish(); |
| 328 | 328 |
| 329 function checkMapping() | 329 function checkMapping() |
| 330 { | 330 { |
| 331 var sourceMapping = rawSourceCode.sourceMapping; | 331 var sourceMapping = rawSourceCode.sourceMapping; |
| 332 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); | 332 InspectorTest.assertEquals(1, sourceMapping.uiSourceCodeList().l
ength); |
| 333 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; | 333 var uiSourceCode = sourceMapping.uiSourceCodeList()[0]; |
| 334 checkUILocation(uiSourceCode, 2, 4, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); | 334 checkUILocation(uiSourceCode, 2, 4, sourceMapping.rawLocationToU
ILocation(createRawLocation(1, 2))); |
| 335 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2)); | 335 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCode, 2, 0)); |
| 336 next(); | 336 next(); |
| 337 } | 337 } |
| 338 }, | 338 }, |
| 339 | 339 |
| 340 function testCompilerSourceMapping(next) | 340 function testCompilerSourceMapping(next) |
| 341 { | 341 { |
| 342 function createCompilerSourceMappingMock() | 342 function createCompilerSourceMappingMock() |
| 343 { | 343 { |
| 344 return { | 344 return { |
| 345 compiledLocationToSourceLocation: function(lineNumber, colum
nNumber) | 345 compiledLocationToSourceLocation: function(lineNumber, colum
nNumber) |
| (...skipping 28 matching lines...) Expand all Loading... |
| 374 rawSourceCode.setCompilerSourceMappingProvider(createCompilerSourceM
appingProviderMock()); | 374 rawSourceCode.setCompilerSourceMappingProvider(createCompilerSourceM
appingProviderMock()); |
| 375 function checkMapping() | 375 function checkMapping() |
| 376 { | 376 { |
| 377 var sourceMapping = rawSourceCode.sourceMapping; | 377 var sourceMapping = rawSourceCode.sourceMapping; |
| 378 uiSourceCodeList = sourceMapping.uiSourceCodeList; | 378 uiSourceCodeList = sourceMapping.uiSourceCodeList; |
| 379 var uiSourceCodeByURL = {}; | 379 var uiSourceCodeByURL = {}; |
| 380 for (var i = 0; i < uiSourceCodeList.length; ++i) | 380 for (var i = 0; i < uiSourceCodeList.length; ++i) |
| 381 uiSourceCodeByURL[uiSourceCodeList[i].url] = uiSourceCodeLis
t[i]; | 381 uiSourceCodeByURL[uiSourceCodeList[i].url] = uiSourceCodeLis
t[i]; |
| 382 checkUILocation(uiSourceCodeByURL["source1.js"], 2, 4, sourceMap
ping.rawLocationToUILocation(createRawLocation(1, 2))); | 382 checkUILocation(uiSourceCodeByURL["source1.js"], 2, 4, sourceMap
ping.rawLocationToUILocation(createRawLocation(1, 2))); |
| 383 checkUILocation(uiSourceCodeByURL["source2.js"], 10, 40, sourceM
apping.rawLocationToUILocation(createRawLocation(15, 20))); | 383 checkUILocation(uiSourceCodeByURL["source2.js"], 10, 40, sourceM
apping.rawLocationToUILocation(createRawLocation(15, 20))); |
| 384 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCodeByURL["source1.js"], 2)); | 384 checkRawLocation(script, 1, 0, sourceMapping.uiLocationToRawLoca
tion(uiSourceCodeByURL["source1.js"], 2, 0)); |
| 385 checkRawLocation(script, 15, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCodeByURL["source2.js"], 10)); | 385 checkRawLocation(script, 15, 0, sourceMapping.uiLocationToRawLoc
ation(uiSourceCodeByURL["source2.js"], 10, 0)); |
| 386 | 386 |
| 387 uiSourceCodeList[0].requestContent(didRequestContent1); | 387 uiSourceCodeList[0].requestContent(didRequestContent1); |
| 388 } | 388 } |
| 389 | 389 |
| 390 function didRequestContent1(mimeType, content) | 390 function didRequestContent1(mimeType, content) |
| 391 { | 391 { |
| 392 InspectorTest.assertEquals("text/javascript", mimeType); | 392 InspectorTest.assertEquals("text/javascript", mimeType); |
| 393 InspectorTest.assertEquals("<content of source1.js>", content); | 393 InspectorTest.assertEquals("<content of source1.js>", content); |
| 394 uiSourceCodeList[1].requestContent(didRequestContent2); | 394 uiSourceCodeList[1].requestContent(didRequestContent2); |
| 395 } | 395 } |
| (...skipping 10 matching lines...) Expand all Loading... |
| 406 | 406 |
| 407 </script> | 407 </script> |
| 408 | 408 |
| 409 </head> | 409 </head> |
| 410 | 410 |
| 411 <body onload="runTest()"> | 411 <body onload="runTest()"> |
| 412 <p>Tests RawSourceCode class.</p> | 412 <p>Tests RawSourceCode class.</p> |
| 413 | 413 |
| 414 </body> | 414 </body> |
| 415 </html> | 415 </html> |
| OLD | NEW |