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

Unified Diff: third_party/WebKit/LayoutTests/inspector/coverage/segments-merge.html

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
Index: third_party/WebKit/LayoutTests/inspector/coverage/segments-merge.html
diff --git a/third_party/WebKit/LayoutTests/inspector/coverage/segments-merge.html b/third_party/WebKit/LayoutTests/inspector/coverage/segments-merge.html
new file mode 100644
index 0000000000000000000000000000000000000000..912e224a197f5e81b6ca0e165907ff30857cf846
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/inspector/coverage/segments-merge.html
@@ -0,0 +1,64 @@
+<html>
+<head>
+<script src="../../http/tests/inspector/inspector-test.js"></script>
+<script>
+function initialize_SegmentsMerge() {
+
+InspectorTest.preloadModule("coverage");
+
+}
+
+function test()
+{
+ testAndDump([], []);
+ testAndDump([{end: 10, count: 1, depth: 1}], []);
+ testAndDump([{end: 10, count: 1, depth: 1}], [{end: 10, count: 1, depth: 1}]);
+ testAndDump([{end: 10, count: 1, depth: 1}], [{end: 20, count: 1, depth: 1}]);
+ testAndDump([{end: 10, count: 1, depth: 1}, {end: 20, count: 1, depth: 1}], []);
+ testAndDump([{end: 30, count: 1, depth: 1}], [{end: 10, count: undefined, depth: 0}, {end: 20, count: 2, depth: 1}]);
+ testAndDump([{end: 30, count: undefined, depth: 0}], [{end: 10, count: undefined, depth: 0}, {end: 20, count: 2, depth: 1}]);
+
+ InspectorTest.completeTest();
+
+ function testAndDump(a, b)
+ {
+ dumpSegments("A: ", a);
+ dumpSegments("B: ", b);
+
+ var mergedAB = Coverage.CoverageInfo._mergeCoverage(a, b);
+ dumpSegments("merged: ", mergedAB);
+ var mergedBA = Coverage.CoverageInfo._mergeCoverage(b, a);
+ if (!rangesEqual(mergedAB, mergedBA))
+ dumpSegments("FAIL, merge(b, a) != merge(a, b): ", mergedBA);
+ }
+
+ function dumpSegments(prefix, arr)
+ {
+ InspectorTest.addResult((prefix || "") + JSON.stringify(arr));
+ }
+
+ function rangesEqual(a, b)
+ {
+ if (a.length !== b.length)
+ return false;
+
+ for (var i = 0; i < a.length; i++) {
+ if (a[i].end !== b[i].end)
+ return false;
+ if (a[i].count !== b[i].count)
+ return false;
+ if (a[i].depth !== b[i].depth)
+ return false;
+ }
+ return true;
+ }
+}
+
+</script>
+</head>
+
+<body onload="runTest()">
+<p>Tests the merge of disjoint segment lists in CoverageModel.</p>
+
+</body>
+</html>

Powered by Google App Engine
This is Rietveld 408576698