validate method

Future<ValidationSummary> validate(
  1. String testPath
)

Implementation

Future<ValidationSummary> validate(String testPath) async {
  CliLogger.logInfo('Validating tests at $testPath');

  if (!InputUtils.validateDirExists(testPath)) {
    CliLogger.logError('The path: `$testPath` does not exist.');
    return ValidationSummary(results: [], isFailed: true);
  }

  final progress = CliLogger.logProgress('Selecting files');
  final files = _getTestFiles(testPath);

  progress.update('Running validation...');
  final results =
      await _validateFiles(files: files, loggerProgress: progress);

  progress.complete('Completed validation');
  var warnings = 0;
  var errors = 0;
  for (final result in results) {
    warnings += result.warnings.length;
    errors += result.errors.length;
  }

  final summary = ValidationSummary(
    results: results,
    isFailed: errors != 0 || warnings != 0,
    warningCount: warnings,
    errorCount: errors,
  );

  _printResults(summary);

  return summary;
}