satisfyAllConditions static method

void satisfyAllConditions(
  1. List<dynamic Function()> conditions
)

Implementation

static void satisfyAllConditions(List<Function()> conditions) {
  //
  final fails = <String>[];
  for (final c in conditions) {
    try {
      c();
    } on ShouldlyTestFailureError catch (error) {
      fails.add(error.message!);
    } on Exception catch (e) {
      final err = e.toString();
      fails.add(err);
    }
  }

  if (fails.isNotEmpty) {
    final buffer = StringBuffer();
    buffer.write(
      'Expected satisfy all conditions specified, but doe not.\nThe following errors were found ...\n',
    );
    for (var i = 0; i < fails.length; i++) {
      final fail = fails[i];
      buffer.write('------------- Error ${i + 1} -------------\n');
      buffer.write(fail);
      buffer.write('\n\n');
    }

    buffer.write('------------------------------------\n');
    throw ShouldlyTestFailureError(buffer.toString());
  }
}