writeResults method

  1. @override
Future<void> writeResults(
  1. Iterable<ScenarioRunResult> results, {
  2. CancellationToken? cancellationToken,
})
override

Writes results to the store.

Implementation

@override
Future<void> writeResults(
  Iterable<ScenarioRunResult> results, {
  CancellationToken? cancellationToken,
}) async {
  for (final result in results) {
    _validateSegment(result.executionName, 'executionName');
    _validateSegment(result.scenarioName, 'scenarioName');
    _validateSegment(result.iterationName, 'iterationName');

    final dir = Directory(
        _join(_resultsRootPath, result.executionName, result.scenarioName));
    dir.createSync(recursive: true);

    final file = File(_join(dir.path, '${result.iterationName}.json'));
    await file.writeAsString(
      const JsonEncoder.withIndent('  ').convert(_resultToJson(result)),
    );
  }
}