
Allow processing GPU start and end events to get processed by flutter driver. To figure out whether or not this works we'll ship in on CI :)
32 lines
950 B
Dart
32 lines
950 B
Dart
// Copyright 2014 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:flutter_driver/flutter_driver.dart';
|
|
import 'package:flutter_driver/src/driver/gpu_sumarizer.dart';
|
|
|
|
import '../common.dart';
|
|
|
|
TimelineEvent newGPUTraceEvent(double ms) => TimelineEvent(<String, dynamic>{
|
|
'name': 'GPUStart',
|
|
'ph': 'b',
|
|
'args': <String, String>{
|
|
'FrameTimeMS': ms.toString()
|
|
},
|
|
});
|
|
|
|
void main() {
|
|
test('Can process GPU frame times.', () {
|
|
final GpuSumarizer summarizer = GpuSumarizer(<TimelineEvent>[
|
|
newGPUTraceEvent(4.233),
|
|
newGPUTraceEvent(7.22),
|
|
newGPUTraceEvent(9.1),
|
|
newGPUTraceEvent(40.23),
|
|
]);
|
|
|
|
expect(summarizer.computeAverageGPUTime(), closeTo(15.19, 0.1));
|
|
expect(summarizer.computePercentileGPUTime(50.0), closeTo(9.1, 0.1));
|
|
expect(summarizer.computeWorstGPUTime(), 40.23);
|
|
});
|
|
}
|