OLD | NEW |
1 // Copyright (c) 2017 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2017 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 /** @typedef {{startOffset: number, endOffset: number, count: number}} */ | 5 /** @typedef {{startOffset: number, endOffset: number, count: number}} */ |
6 Coverage.RangeUseCount; | 6 Coverage.RangeUseCount; |
7 | 7 |
8 /** @typedef {{end: number, count: (number|undefined)}} */ | 8 /** @typedef {{end: number, count: (number|undefined)}} */ |
9 Coverage.CoverageSegment; | 9 Coverage.CoverageSegment; |
10 | 10 |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
244 } | 244 } |
245 | 245 |
246 /** | 246 /** |
247 * @return {number} | 247 * @return {number} |
248 */ | 248 */ |
249 usedSize() { | 249 usedSize() { |
250 return this._usedSize; | 250 return this._usedSize; |
251 } | 251 } |
252 | 252 |
253 /** | 253 /** |
254 * @return {!Promise<!Array<!{range: !Common.TextRange, count: number}>>} | 254 * @return {!Promise<!Array<!{range: !TextUtils.TextRange, count: number}>>} |
255 */ | 255 */ |
256 async buildTextRanges() { | 256 async buildTextRanges() { |
257 var textRangePromises = []; | 257 var textRangePromises = []; |
258 for (var coverageInfo of this._coverageInfoByLocation.values()) | 258 for (var coverageInfo of this._coverageInfoByLocation.values()) |
259 textRangePromises.push(coverageInfo.buildTextRanges()); | 259 textRangePromises.push(coverageInfo.buildTextRanges()); |
260 var allTextRanges = await Promise.all(textRangePromises); | 260 var allTextRanges = await Promise.all(textRangePromises); |
261 return [].concat(...allTextRanges); | 261 return [].concat(...allTextRanges); |
262 } | 262 } |
263 }; | 263 }; |
264 | 264 |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
329 } | 329 } |
330 | 330 |
331 for (; indexA < segmentsA.length; indexA++) | 331 for (; indexA < segmentsA.length; indexA++) |
332 result.push(segmentsA[indexA]); | 332 result.push(segmentsA[indexA]); |
333 for (; indexB < segmentsB.length; indexB++) | 333 for (; indexB < segmentsB.length; indexB++) |
334 result.push(segmentsB[indexB]); | 334 result.push(segmentsB[indexB]); |
335 return result; | 335 return result; |
336 } | 336 } |
337 | 337 |
338 /** | 338 /** |
339 * @return {!Promise<!Array<!{range: !Common.TextRange, count: number}>>} | 339 * @return {!Promise<!Array<!{range: !TextUtils.TextRange, count: number}>>} |
340 */ | 340 */ |
341 async buildTextRanges() { | 341 async buildTextRanges() { |
342 var contents = await this._contentProvider.requestContent(); | 342 var contents = await this._contentProvider.requestContent(); |
343 if (!contents) | 343 if (!contents) |
344 return []; | 344 return []; |
345 var text = new Common.Text(contents); | 345 var text = new TextUtils.Text(contents); |
346 var lastOffset = 0; | 346 var lastOffset = 0; |
347 var result = []; | 347 var result = []; |
348 for (var segment of this._segments) { | 348 for (var segment of this._segments) { |
349 if (!segment.end) | 349 if (!segment.end) |
350 continue; | 350 continue; |
351 var startPosition = text.positionFromOffset(lastOffset); | 351 var startPosition = text.positionFromOffset(lastOffset); |
352 var endPosition = text.positionFromOffset(segment.end); | 352 var endPosition = text.positionFromOffset(segment.end); |
353 if (!startPosition.lineNumber) | 353 if (!startPosition.lineNumber) |
354 startPosition.columnNumber += this._columnOffset; | 354 startPosition.columnNumber += this._columnOffset; |
355 startPosition.lineNumber += this._lineOffset; | 355 startPosition.lineNumber += this._lineOffset; |
356 if (!endPosition.lineNumber) | 356 if (!endPosition.lineNumber) |
357 endPosition.columnNumber += this._columnOffset; | 357 endPosition.columnNumber += this._columnOffset; |
358 endPosition.lineNumber += this._lineOffset; | 358 endPosition.lineNumber += this._lineOffset; |
359 var range = new Common.TextRange( | 359 var range = new TextUtils.TextRange( |
360 startPosition.lineNumber, startPosition.columnNumber, endPosition.line
Number, endPosition.columnNumber); | 360 startPosition.lineNumber, startPosition.columnNumber, endPosition.line
Number, endPosition.columnNumber); |
361 result.push({count: segment.count || 0, range: range}); | 361 result.push({count: segment.count || 0, range: range}); |
362 lastOffset = segment.end; | 362 lastOffset = segment.end; |
363 } | 363 } |
364 return result; | 364 return result; |
365 } | 365 } |
366 | 366 |
367 _updateStats() { | 367 _updateStats() { |
368 this._usedSize = 0; | 368 this._usedSize = 0; |
369 this._unusedSize = 0; | 369 this._unusedSize = 0; |
370 | 370 |
371 var last = 0; | 371 var last = 0; |
372 for (var segment of this._segments) { | 372 for (var segment of this._segments) { |
373 if (typeof segment.count === 'number') { | 373 if (typeof segment.count === 'number') { |
374 if (segment.count) | 374 if (segment.count) |
375 this._usedSize += segment.end - last; | 375 this._usedSize += segment.end - last; |
376 else | 376 else |
377 this._unusedSize += segment.end - last; | 377 this._unusedSize += segment.end - last; |
378 } | 378 } |
379 last = segment.end; | 379 last = segment.end; |
380 } | 380 } |
381 } | 381 } |
382 }; | 382 }; |
OLD | NEW |