Skip to content

Commit badedd7

Browse files
committed
class-based benchmark: automatic naming
1 parent 4dea2a3 commit badedd7

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

lib/src/benchmark.dart

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@ import 'printer.dart';
66

77
/// Base class for benchmarks sync and async benchmarks
88
abstract class Benchmark {
9-
final String _name;
9+
late final String _name;
1010

11-
Benchmark(this._name);
11+
Benchmark._(String? name) {
12+
_name = name ?? runtimeType.toString();
13+
}
1214
}
1315

1416
class BenchmarkSettings {
@@ -68,7 +70,7 @@ class BenchmarkResult {
6870

6971
/// Base class for a synchronous code.
7072
abstract class SyncBenchmark extends Benchmark {
71-
SyncBenchmark(String name) : super(name);
73+
SyncBenchmark([String? name]) : super._(name);
7274

7375
// Override this with the benchmark code.
7476
void run();
@@ -113,7 +115,7 @@ abstract class SyncBenchmark extends Benchmark {
113115

114116
/// Base class for asynchronous code.
115117
abstract class AsyncBenchmark extends Benchmark {
116-
AsyncBenchmark(String name) : super(name);
118+
AsyncBenchmark([String? name]) : super._(name);
117119

118120
// Override this with the benchmark code.
119121
Future<void> run();

test/benchmarking_test.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@ void main() {
4040
}
4141

4242
class TestBenchmarkSync extends SyncBenchmark with BenchmarkTester {
43-
TestBenchmarkSync() : super('test');
44-
4543
@override
4644
void setup() async => _setup();
4745

@@ -53,8 +51,6 @@ class TestBenchmarkSync extends SyncBenchmark with BenchmarkTester {
5351
}
5452

5553
class TestBenchmarkAsync extends AsyncBenchmark with BenchmarkTester {
56-
TestBenchmarkAsync() : super('test');
57-
5854
@override
5955
Future<void> setup() async => _setup();
6056

0 commit comments

Comments
 (0)