execute method

  1. @override
Future<void> execute({
  1. required CancelToken cancelToken,
  2. required TestReport report,
  3. required TestController tester,
})
override

Sets the variable on the TestController for the currently running test.

Implementation

@override
Future<void> execute({
  required CancelToken cancelToken,
  required TestReport report,
  required TestController tester,
}) async {
  final type = tester.resolveVariable(this.type);
  final value = tester.resolveVariable(this.value);
  final variableName = tester.resolveVariable(this.variableName);

  assert(type == 'bool' ||
      type == 'double' ||
      type == 'int' ||
      type == 'String');
  assert(variableName.isNotEmpty == true);
  final name = "$id('$variableName', '$type', '$value')";

  log(
    name,
    tester: tester,
  );
  tester.setTestVariable(
    variableName: variableName,
    value: value,
  );
}