def MergeLikeValuesFromSamePage(cls, values): assert len(values) > 0 v0 = values[0] return HistogramValue(v0.page, v0.name, v0.units, raw_value_json=histogram_util.AddHistograms( [v.ToJSONString() for v in values]), important=v0.important)
def MergeLikeValuesFromSamePage(cls, values): assert len(values) > 0 v0 = values[0] return HistogramValue( v0.page, v0.name, v0.units, raw_value_json=histogram_util.AddHistograms( [v.ToJSONString() for v in values]), description=v0.description, important=v0.important, tir_label=value_module.MergedTirLabel(values), improvement_direction=v0.improvement_direction, grouping_keys=v0.grouping_keys)
def testAddHistograms(self): histograms = [] histograms.append("""{"count": 3, "buckets": [ {"low": 1, "high": 2, "count": 1}, {"low": 2, "high": 3, "count": 2}]}""") histograms.append("""{"count": 20, "buckets": [ {"low": 2, "high": 3, "count": 10}, {"low": 3, "high": 4, "count": 10}]}""") histograms.append("""{"count": 15, "buckets": [ {"low": 1, "high": 2, "count": 4}, {"low": 3, "high": 4, "count": 11}]}""") new_histogram = json.loads(histogram_util.AddHistograms(histograms)) new_buckets = dict() for b in new_histogram['buckets']: new_buckets[b['low']] = b['count'] self.assertEquals(5, new_buckets[1]) self.assertEquals(12, new_buckets[2]) self.assertEquals(21, new_buckets[3])