ensureNotExist method

Future<void> ensureNotExist({
  1. Duration timeout = const Duration(seconds: 10),
})

Implementation

Future<void> ensureNotExist({
  Duration timeout = const Duration(seconds: 10),
}) async {
  final interval = const Duration(milliseconds: 100);

  final totalTicks = timeout.inMilliseconds ~/ interval.inMilliseconds;

  for (var i = 0; i < totalTicks; i++) {
    await tester.pump(interval);
    if (!exists) return;
  }

  if (exists) {
    throw Exception(
      'Element still exists after exceeding the ${timeout.inSeconds}s timeout.',
    );
  }
}