| Index: tools/telemetry/telemetry/value/list_of_string_values.py
|
| diff --git a/tools/telemetry/telemetry/value/list_of_string_values.py b/tools/telemetry/telemetry/value/list_of_string_values.py
|
| index 4f3604a44f3300ea3dce0cd05ee29ae2504fe83e..d69f31abafb7266076055f5d1e5bed4961a8f758 100644
|
| --- a/tools/telemetry/telemetry/value/list_of_string_values.py
|
| +++ b/tools/telemetry/telemetry/value/list_of_string_values.py
|
| @@ -8,10 +8,11 @@ from telemetry.value import none_values
|
|
|
| class ListOfStringValues(value_module.Value):
|
| def __init__(self, page, name, units, values,
|
| - important=True, description=None, none_value_reason=None,
|
| + important=True, description=None,
|
| + interaction_record=None, none_value_reason=None,
|
| same_page_merge_policy=value_module.CONCATENATE):
|
| super(ListOfStringValues, self).__init__(page, name, units, important,
|
| - description)
|
| + description, interaction_record)
|
| if values is not None:
|
| assert isinstance(values, list)
|
| assert len(values) > 0
|
| @@ -30,15 +31,17 @@ class ListOfStringValues(value_module.Value):
|
| merge_policy = 'CONCATENATE'
|
| else:
|
| merge_policy = 'PICK_FIRST'
|
| - return ('ListOfStringValues(%s, %s, %s, %s, ' +
|
| - 'important=%s, description=%s, same_page_merge_policy=%s)') % (
|
| - page_name,
|
| - self.name,
|
| - self.units,
|
| - repr(self.values),
|
| - self.important,
|
| - self.description,
|
| - merge_policy)
|
| + return ('ListOfStringValues(%s, %s, %s, %s, '
|
| + 'important=%s, description=%s, interaction_record=%s, '
|
| + 'same_page_merge_policy=%s)') % (
|
| + page_name,
|
| + self.name,
|
| + self.units,
|
| + repr(self.values),
|
| + self.important,
|
| + self.description,
|
| + self.interaction_record,
|
| + merge_policy)
|
|
|
| def GetBuildbotDataType(self, output_context):
|
| if self._IsImportantGivenOutputIntent(output_context):
|
| @@ -78,6 +81,8 @@ class ListOfStringValues(value_module.Value):
|
|
|
| if 'none_value_reason' in value_dict:
|
| kwargs['none_value_reason'] = value_dict['none_value_reason']
|
| + if 'interaction_record' in value_dict:
|
| + kwargs['interaction_record'] = value_dict['interaction_record']
|
|
|
| return ListOfStringValues(**kwargs)
|
|
|
| @@ -95,7 +100,7 @@ class ListOfStringValues(value_module.Value):
|
| none_value_reason=v0.none_value_reason)
|
|
|
| assert v0.same_page_merge_policy == value_module.CONCATENATE
|
| - return cls._MergeLikeValues(values, v0.page, v0.name)
|
| + return cls._MergeLikeValues(values, v0.page, v0.name, v0.interaction_record)
|
|
|
| @classmethod
|
| def MergeLikeValuesFromDifferentPages(cls, values,
|
| @@ -103,10 +108,10 @@ class ListOfStringValues(value_module.Value):
|
| assert len(values) > 0
|
| v0 = values[0]
|
| name = v0.name_suffix if group_by_name_suffix else v0.name
|
| - return cls._MergeLikeValues(values, None, name)
|
| + return cls._MergeLikeValues(values, None, name, v0.interaction_record)
|
|
|
| @classmethod
|
| - def _MergeLikeValues(cls, values, page, name):
|
| + def _MergeLikeValues(cls, values, page, name, interaction_record):
|
| v0 = values[0]
|
| merged_values = []
|
| none_value_reason = None
|
| @@ -120,5 +125,6 @@ class ListOfStringValues(value_module.Value):
|
| page, name, v0.units,
|
| merged_values,
|
| important=v0.important,
|
| + interaction_record=interaction_record,
|
| same_page_merge_policy=v0.same_page_merge_policy,
|
| none_value_reason=none_value_reason)
|
|
|