| library result_emitter_test; |
| |
| import 'package:benchmark_harness/benchmark_harness.dart'; |
| import 'package:mockito/mockito.dart'; |
| |
| import 'package:test/test.dart'; |
| |
| void main() { |
| benchmarkHarnessTest(); |
| } |
| |
| class MockResultEmitter extends Mock implements ScoreEmitter {} |
| |
| // Create a new benchmark which has an emitter. |
| class BenchmarkWithResultEmitter extends BenchmarkBase { |
| const BenchmarkWithResultEmitter(ScoreEmitter emitter) |
| : super("Template", emitter: emitter); |
| |
| void run() {} |
| |
| void setup() {} |
| |
| void teardown() {} |
| } |
| |
| benchmarkHarnessTest() { |
| MockResultEmitter createMockEmitter() { |
| MockResultEmitter emitter = new MockResultEmitter(); |
| return emitter; |
| } |
| |
| group('ResultEmitter', () { |
| test('should be called when emitter is provided', () { |
| MockResultEmitter emitter = createMockEmitter(); |
| var testBenchmark = new BenchmarkWithResultEmitter(emitter); |
| testBenchmark.report(); |
| |
| verify(emitter.emit(any, any)).called(1); |
| }); |
| }); |
| } |