Unverified Commit b468be30 authored by keyonghan's avatar keyonghan Committed by GitHub

Use default value for `ResultData` when uploading metrics from test runner (#88749)

parent b68cdfcf
......@@ -45,11 +45,13 @@ Future<FlutterDestination> connectFlutterDestination() async {
/// ]
/// }
List<MetricPoint> parse(Map<String, dynamic> resultsJson) {
final List<String> scoreKeys = (resultsJson['BenchmarkScoreKeys'] as List<dynamic>).cast<String>();
final Map<String, dynamic> resultData = resultsJson['ResultData'] as Map<String, dynamic>;
final List<String> scoreKeys =
(resultsJson['BenchmarkScoreKeys'] as List<dynamic>?)?.cast<String>() ?? const <String>[];
final Map<String, dynamic> resultData =
resultsJson['ResultData'] as Map<String, dynamic>? ?? const <String, dynamic>{};
final String gitBranch = (resultsJson['CommitBranch'] as String).trim();
final String gitSha = (resultsJson['CommitSha'] as String).trim();
final String builderName = resultsJson['BuilderName'] as String;
final String builderName = (resultsJson['BuilderName'] as String).trim();
final List<MetricPoint> metricPoints = <MetricPoint>[];
for (final String scoreKey in scoreKeys) {
metricPoints.add(
......
......@@ -16,17 +16,30 @@ void main() {
'BuilderName': 'test',
'ResultData': <String, dynamic>{
'average_frame_build_time_millis': 0.4550425531914895,
'90th_percentile_frame_build_time_millis': 0.473
'90th_percentile_frame_build_time_millis': 0.473,
},
'BenchmarkScoreKeys': <String>[
'average_frame_build_time_millis',
'90th_percentile_frame_build_time_millis'
]
'90th_percentile_frame_build_time_millis',
],
};
final List<MetricPoint> metricPoints = parse(results);
expect(metricPoints[0].value, equals(0.4550425531914895));
expect(metricPoints[1].value, equals(0.473));
});
test('succeeds - null ResultData', () {
final Map<String, dynamic> results = <String, dynamic>{
'CommitBranch': 'master',
'CommitSha': 'abc',
'BuilderName': 'test',
'ResultData': null,
'BenchmarkScoreKeys': null,
};
final List<MetricPoint> metricPoints = parse(results);
expect(metricPoints.length, 0);
});
});
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment