processFeatureFile method

Future processFeatureFile(
  1. String filePath,
  2. RunStatus runStatus,
  3. OguretsState state
)

Implementation

Future processFeatureFile(
    String filePath, RunStatus runStatus, OguretsState state) async {
  List<String> contents = await File(filePath).readAsLines();
  _Feature? feature = await (GherkinParserTask(contents, filePath).execute()
      as FutureOr<_Feature?>);

  if (feature != null) {
//    _log.info("Parsing took ${runStatus.sw.elapsedMilliseconds} ms");
    FeatureStatus featureStatus = await feature.execute(state, debug: _debug);

    if (featureStatus.failed) {
      runStatus.failedFeatures.add(featureStatus);
    } else if (featureStatus.skipped) {
      runStatus.skippedFeatures.add(featureStatus);
    } else {
      runStatus.passedFeatures.add(featureStatus);
    }
  }
}