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

Unified Diff: telemetry/telemetry/internal/results/page_test_results.py

Issue 2538043005: Replace ValueSetOutputFormatter with HistogramSetJsonOutputFormatter. (Closed)
Patch Set: rebase Created 4 years 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: telemetry/telemetry/internal/results/page_test_results.py
diff --git a/telemetry/telemetry/internal/results/page_test_results.py b/telemetry/telemetry/internal/results/page_test_results.py
index 48c9f1285280351a1726a91c2fb9de4f25978d8c..4c320b376329d9f69307422adcd706c445388a2d 100644
--- a/telemetry/telemetry/internal/results/page_test_results.py
+++ b/telemetry/telemetry/internal/results/page_test_results.py
@@ -5,21 +5,26 @@
import collections
import copy
import datetime
+import json
import logging
+import os
import random
import sys
+import tempfile
import traceback
from py_utils import cloud_storage # pylint: disable=import-error
+from telemetry import value as value_module
+from telemetry.internal.results import chart_json_output_formatter
from telemetry.internal.results import json_output_formatter
from telemetry.internal.results import progress_reporter as reporter_module
from telemetry.internal.results import story_run
-from telemetry import value as value_module
from telemetry.value import failure
from telemetry.value import skip
from telemetry.value import trace
+from tracing.value import convert_chart_json
class IterationInfo(object):
def __init__(self):
@@ -168,6 +173,30 @@ class PageTestResults(object):
def value_set(self):
return self._value_set
+ def AsHistogramDicts(self, benchmark_metadata):
+ if self.value_set:
+ return self.value_set
+ chart_json = chart_json_output_formatter.ResultsAsChartDict(
+ benchmark_metadata, self.all_page_specific_values,
+ self.all_summary_values)
+ info = self.iteration_info
+ chart_json['label'] = info.label
+ chart_json['benchmarkStartMs'] = info.benchmark_start_ms
+
+ file_descriptor, chart_json_path = tempfile.mkstemp()
+ os.close(file_descriptor)
+ json.dump(chart_json, file(chart_json_path, 'w'))
+
+ vinn_result = convert_chart_json.ConvertChartJson(chart_json_path)
+
+ os.remove(chart_json_path)
+
+ if vinn_result.returncode != 0:
+ logging.error('Error converting chart json to Histograms:\n' +
+ vinn_result.stdout)
+ return []
+ return json.loads(vinn_result.stdout)
+
def __copy__(self):
cls = self.__class__
result = cls.__new__(cls)
@@ -339,6 +368,7 @@ class PageTestResults(object):
self._SerializeTracesToDirPath(self._output_dir)
for output_formatter in self._output_formatters:
output_formatter.Format(self)
+ output_formatter.PrintViewResults()
else:
for output_formatter in self._output_formatters:
output_formatter.FormatDisabled()
« no previous file with comments | « telemetry/telemetry/internal/results/output_formatter.py ('k') | telemetry/telemetry/internal/results/results_options.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698