test function

void test(
  1. Object? description,
  2. FutureOr body(), {
  3. String? testOn,
  4. Timeout? timeout,
  5. Object? skip,
  6. Object? tags,
  7. Map<String, dynamic>? onPlatform,
  8. int? retry,
  9. TestLocation? location,
  10. @Deprecated('Debug only') bool solo = false,
})

Drop-in replacement for package:test's test with Allure reporting.

Implementation

void test(
  Object? description,
  FutureOr<dynamic> Function() body, {
  String? testOn,
  t.Timeout? timeout,
  Object? skip,
  Object? tags,
  Map<String, dynamic>? onPlatform,
  int? retry,
  t.TestLocation? location,
  @Deprecated('Debug only') bool solo = false,
}) {
  _ensureAllureInstalled();
  final prepared = preparePackageTestDeclaration(
    description: description,
    skip: skip,
    tags: tags,
    locationUri: location?.uri,
    stackTrace: StackTrace.current,
  );

  FutureOr<dynamic> Function() effectiveBody = body;
  if (prepared.shouldRuntimeSkip) {
    effectiveBody = () => t.markTestSkipped(prepared.runtimeSkipReason);
  }

  t.test(
    description,
    effectiveBody,
    testOn: testOn,
    timeout: timeout,
    skip: prepared.declarationSkip,
    tags: tags,
    onPlatform: onPlatform,
    retry: retry,
    location: location,
    solo: solo,
  );
}