2019-04-23 10:29:24 +00:00
|
|
|
import 'package:gherkin/gherkin.dart';
|
2018-10-26 10:09:22 +00:00
|
|
|
|
2020-05-07 23:36:55 +00:00
|
|
|
typedef OnRunCode = Future<void> Function(Iterable parameters);
|
2018-10-26 10:09:22 +00:00
|
|
|
|
2019-08-23 12:22:37 +00:00
|
|
|
class MockStepDefinition extends StepDefinitionBase<World> {
|
2018-10-26 10:09:22 +00:00
|
|
|
bool hasRun = false;
|
|
|
|
int runCount = 0;
|
2021-05-01 03:56:17 +00:00
|
|
|
final OnRunCode? code;
|
2018-10-26 10:09:22 +00:00
|
|
|
|
2019-02-06 01:09:07 +00:00
|
|
|
MockStepDefinition([this.code, int expectedParameterCount = 0])
|
|
|
|
: super(null, expectedParameterCount);
|
2018-10-26 10:09:22 +00:00
|
|
|
|
|
|
|
@override
|
|
|
|
Future<void> onRun(Iterable parameters) async {
|
|
|
|
hasRun = true;
|
|
|
|
runCount += 1;
|
|
|
|
if (code != null) {
|
2021-05-01 03:56:17 +00:00
|
|
|
await code!(parameters);
|
2018-10-26 10:09:22 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
2021-05-01 03:56:17 +00:00
|
|
|
RegExp get pattern => RegExp('');
|
2018-10-26 10:09:22 +00:00
|
|
|
}
|