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

Unified Diff: tracing/tracing/metrics/value_set_test.html

Issue 2000063006: Define DiagnosticMap and a basic Diagnostic hierarchy (Closed) Base URL: https://github.com/catapult-project/catapult.git@master
Patch Set: rebase Created 4 years, 7 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: tracing/tracing/metrics/value_set_test.html
diff --git a/tracing/tracing/metrics/value_set_test.html b/tracing/tracing/metrics/value_set_test.html
index a8eb56d1f3e71f945bf477610a8dd23c0df9b209..14cf3ff5bee79829ed061fe34bc6af8738f60127 100644
--- a/tracing/tracing/metrics/value_set_test.html
+++ b/tracing/tracing/metrics/value_set_test.html
@@ -14,7 +14,6 @@ found in the LICENSE file.
'use strict';
tr.b.unittest.testSuite(function() {
-
test('computeSummaryValuesForNumericValue', function() {
var n = tr.v.NumericBuilder.createLinear(
tr.v.Unit.byName.timeDurationInMs, tr.b.Range.fromExplicitRange(0, 100),
@@ -36,10 +35,10 @@ tr.b.unittest.testSuite(function() {
var results =
tr.metrics.ValueSet.computeSummaryValuesForNumericValue(
- new tr.v.NumericValue('url', 'abc', n, { description: 'desc' }));
+ new tr.v.NumericValue('abc', n, { description: 'desc' }));
var values = {};
results.forEach(function(x) {
- values[x.groupingKeys.name] = x.numeric;
+ values[x.name] = x.numeric;
});
assert.strictEqual(values.abc_count.value, 3);
assert.strictEqual(values.abc_min.value, 50);
@@ -50,5 +49,64 @@ tr.b.unittest.testSuite(function() {
assert.closeTo(values.abc_pct_050.value, 60, 1);
assert.closeTo(values.abc_pct_100.value, 70, 1);
});
+
+ test('relatedValueSetDiagnostic', function() {
+ var unit = tr.v.Unit.byName.unitlessNumber;
+ var a = new tr.v.NumericValue('a', new tr.v.ScalarNumeric(unit, 0));
+ var b = new tr.v.NumericValue('b', new tr.v.ScalarNumeric(unit, 1));
+ var c = new tr.v.NumericValue('c', new tr.v.ScalarNumeric(unit, 2));
+ a.diagnostics.add('rvs', new tr.v.d.RelatedValueSet([b, c]));
+
+ // Don't serialize c just yet.
+ var values = new tr.metrics.ValueSet([a, b]);
+
+ var values2 = new tr.metrics.ValueSet();
+ values2.addValuesFromDicts(values.valueDicts);
+
+ var a2 = values2.getValuesWithName('a');
+ assert.strictEqual(1, a2.length);
+ a2 = a2[0];
+ assert.strictEqual(a.guid, a2.guid);
+ assert.notStrictEqual(a, a2);
+
+ var b2 = values2.getValuesWithName('b');
+ assert.strictEqual(1, b2.length);
+ b2 = b2[0];
+ assert.strictEqual(b.guid, b2.guid);
+ assert.notStrictEqual(b, b2);
+
+ var rvs2 = a2.diagnostics.get('rvs');
+ assert.instanceOf(rvs2, tr.v.d.RelatedValueSet);
+ assert.strictEqual(2, rvs2.values.length);
+
+ // Assert that b and c are in a2's RelatedValueSet.
+ var rvs2vs = rvs2.values;
+ var rvs2guids = rvs2vs.map(v => v.guid);
+ var b2i = rvs2guids.indexOf(b.guid);
+ assert.strictEqual(b2, rvs2vs[b2i]);
+
+ var c2i = rvs2guids.indexOf(c.guid);
+ assert.strictEqual(c.guid, rvs2vs[c2i].guid);
+ assert.instanceOf(rvs2vs[c2i], tr.v.d.ValueRef);
+
+ // Now serialize c and add it to values2.
+ // Related value resolution is idempotent.
+ // Old values can refer to new values.
+ values2.addValuesFromDicts([c.asDict()]);
+
+ var c2 = values2.getValuesWithName('c');
+ assert.strictEqual(1, c2.length);
+ c2 = c2[0];
+ assert.strictEqual(c.guid, c2.guid);
+ assert.notStrictEqual(c, c2);
+
+ // Now a real c2 Value should be in a2's RelatedValueSet.
+ rvs2vs = rvs2.values;
+ rvs2guids = rvs2vs.map(v => v.guid);
+ b2i = rvs2guids.indexOf(b.guid);
+ c2i = rvs2guids.indexOf(c.guid);
+ assert.strictEqual(b2, rvs2vs[b2i]);
+ assert.strictEqual(c2, rvs2vs[c2i]);
+ });
});
</script>
« no previous file with comments | « tracing/tracing/metrics/value_set.html ('k') | tracing/tracing/ui/analysis/single_user_expectation_sub_view.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698