ValidationResult.aggregate constructor

ValidationResult.aggregate(
  1. List<ValidationCheck> checks
)

Factory helper for creating an aggregated ValidationResult from a list of checks.

Implementation

factory ValidationResult.aggregate(List<ValidationCheck> checks) {
  final errors = <String>[];
  final warnings = <String>[];
  bool passed = true;

  for (final check in checks) {
    if (check.isFailed) {
      passed = false;
      errors.add('${check.name}: ${check.message}');
    } else if (check.isWarning) {
      warnings.add('${check.name}: ${check.message}');
    }
  }

  return ValidationResult(
    passed: passed,
    checks: List.unmodifiable(checks),
    errors: List.unmodifiable(errors),
    warnings: List.unmodifiable(warnings),
  );
}