Commit e297bcc5 authored by Sigurd Schneider's avatar Sigurd Schneider Committed by Commit Bot

[devtools] Report addition of new files as coverage update

We report the <script>function foo() {}</script> as completely
uncovered, and this caused the CoverageModel to determine that the
coverage report from the back-end did not change anything (used bytes
did not increase). However, the coverage report from the back-end might
have added the script to the CoverageModel's entries in the first place.
In such cases, the coverage list view was not properly updated.

This CL adds an update notification whenever a CoverageURLInfo is first
created as well (independent of whether used bytes are zero).

Bug: chromium:1004203
Change-Id: I458e14725a10a25087e443b2c509dc444d4bf997
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1864675
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: default avatarBenedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#706363}
parent e1ebc20f
...@@ -445,7 +445,9 @@ Coverage.CoverageModel = class extends SDK.SDKModel { ...@@ -445,7 +445,9 @@ Coverage.CoverageModel = class extends SDK.SDKModel {
return null; return null;
} }
let urlCoverage = this._coverageByURL.get(url); let urlCoverage = this._coverageByURL.get(url);
let isNewUrlCoverage = false;
if (!urlCoverage) { if (!urlCoverage) {
isNewUrlCoverage = true;
urlCoverage = new Coverage.URLCoverageInfo(url); urlCoverage = new Coverage.URLCoverageInfo(url);
this._coverageByURL.set(url, urlCoverage); this._coverageByURL.set(url, urlCoverage);
} }
...@@ -458,7 +460,7 @@ Coverage.CoverageModel = class extends SDK.SDKModel { ...@@ -458,7 +460,7 @@ Coverage.CoverageModel = class extends SDK.SDKModel {
} }
const oldUsedSize = coverageInfo._usedSize; const oldUsedSize = coverageInfo._usedSize;
coverageInfo.mergeCoverage(segments); coverageInfo.mergeCoverage(segments);
if (coverageInfo._usedSize === oldUsedSize) { if (!isNewUrlCoverage && coverageInfo._usedSize === oldUsedSize) {
return null; return null;
} }
urlCoverage._usedSize += coverageInfo._usedSize - oldUsedSize; urlCoverage._usedSize += coverageInfo._usedSize - oldUsedSize;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment