| // Copyright 2013 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import 'package:metrics_center/src/common.dart'; |
| import 'package:metrics_center/src/constants.dart'; |
| import 'package:metrics_center/src/google_benchmark.dart'; |
| |
| import 'common.dart'; |
| import 'utility.dart'; |
| |
| void main() { |
| test('GoogleBenchmarkParser parses example json.', () async { |
| final List<MetricPoint> points = |
| await GoogleBenchmarkParser.parse('test/example_google_benchmark.json'); |
| expect(points.length, 9); |
| expectSetMatch( |
| points.map((MetricPoint p) => p.value), |
| <double>[101, 101, 4460, 4460, 6548, 6548, 3.8, 3.89, 4.89], |
| ); |
| expectSetMatch( |
| points.map((MetricPoint p) => p.tags[kSubResultKey]), |
| <String>[ |
| 'cpu_time', |
| 'real_time', |
| 'cpu_coefficient', |
| 'real_coefficient', |
| 'rms', |
| ], |
| ); |
| expectSetMatch( |
| points.map((MetricPoint p) => p.tags[kNameKey]), |
| <String>[ |
| 'BM_PaintRecordInit', |
| 'SkParagraphFixture/ShortLayout', |
| 'SkParagraphFixture/TextBigO_BigO', |
| 'ParagraphFixture/TextBigO_BigO', |
| 'ParagraphFixture/TextBigO_RMS', |
| ], |
| ); |
| for (final MetricPoint p in points) { |
| expect(p.tags.containsKey('host_name'), false); |
| expect(p.tags.containsKey('load_avg'), false); |
| expect(p.tags.containsKey('caches'), false); |
| expect(p.tags.containsKey('executable'), true); |
| } |
| }); |
| } |