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

Unified Diff: third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js

Issue 2745283002: DevTools: merge coverage segments from different instances of same URL (Closed)
Patch Set: review comments addressed Created 3 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js
diff --git a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js
index 0ebc822efc0b17e2bd8f7a51a0ea1a9f084660a3..77c48d09308036de7080c6c5b37316dfd0229582 100644
--- a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js
+++ b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageView.js
@@ -74,7 +74,7 @@ Coverage.CoverageView = class extends UI.VBox {
}
/**
- * @param {!Array<!Coverage.CoverageInfo>} coverageInfo
+ * @param {!Array<!Coverage.URLCoverageInfo>} coverageInfo
*/
async _updateViews(coverageInfo) {
this._updateStats(coverageInfo);
@@ -85,14 +85,14 @@ Coverage.CoverageView = class extends UI.VBox {
}
/**
- * @param {!Array<!Coverage.CoverageInfo>} coverageInfo
+ * @param {!Array<!Coverage.URLCoverageInfo>} coverageInfo
*/
_updateStats(coverageInfo) {
var total = 0;
var unused = 0;
for (var info of coverageInfo) {
- total += info.size || 0;
- unused += info.unusedSize || 0;
+ total += info.size();
+ unused += info.unusedSize();
}
var percentUnused = total ? Math.round(100 * unused / total) : 0;
@@ -102,49 +102,16 @@ Coverage.CoverageView = class extends UI.VBox {
}
/**
- * @param {!Coverage.CoverageInfo} coverageInfo
+ * @param {!Coverage.URLCoverageInfo} coverageInfo
*/
static async _updateGutter(coverageInfo) {
- var uiSourceCode = Workspace.workspace.uiSourceCodeForURL(coverageInfo.contentProvider.contentURL());
+ var uiSourceCode = Workspace.workspace.uiSourceCodeForURL(coverageInfo.url());
if (!uiSourceCode)
return;
// FIXME: gutter should be set in terms of offsets and therefore should not require contents.
- var contents = await coverageInfo.contentProvider.requestContent();
- if (!contents)
- return;
- var text = new Common.Text(contents);
- var lastOffset = 0;
- var rangesByDepth = [];
- for (var segment of coverageInfo.segments) {
- if (typeof segment.count !== 'number') {
- lastOffset = segment.end;
- continue;
- }
- var startPosition = text.positionFromOffset(lastOffset);
- var endPosition = text.positionFromOffset(segment.end);
- if (!startPosition.lineNumber)
- startPosition.columnNumber += coverageInfo.columnOffset;
- startPosition.lineNumber += coverageInfo.lineOffset;
- if (!endPosition.lineNumber)
- endPosition.columnNumber += coverageInfo.columnOffset;
- endPosition.lineNumber += coverageInfo.lineOffset;
-
- var ranges = rangesByDepth[segment.depth - 1]; // depth === 0 => count === undefined
- if (!ranges) {
- ranges = [];
- rangesByDepth[segment.depth - 1] = ranges;
- }
- ranges.push({
- count: segment.count,
- range: new Common.TextRange(
- startPosition.lineNumber, startPosition.columnNumber, endPosition.lineNumber, endPosition.columnNumber)
- });
- lastOffset = segment.end;
- }
- for (var ranges of rangesByDepth) {
- for (var r of ranges)
- uiSourceCode.addDecoration(r.range, Coverage.CoverageView.LineDecorator.type, r.count);
- }
+ var ranges = await coverageInfo.buildTextRanges();
+ for (var r of ranges)
+ uiSourceCode.addDecoration(r.range, Coverage.CoverageView.LineDecorator.type, r.count);
}
};
« no previous file with comments | « third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698