getTestType method

String getTestType(
  1. String path, {
  2. required bool isFlutter,
})

Implementation

String getTestType(String path, {required bool isFlutter}) {
  var testType = 'dart';

  final file = fs.file(path);

  if (isFlutter) {
    final content = file.readAsStringSync();

    final flutterTestType = RegExp(r'(\w+WidgetsFlutterBinding)')
        .firstMatch(content)
        ?.group(1)
        ?.replaceAll('TestWidgetsFlutterBinding', '')
        .toLowerCase();

    if (flutterTestType == null) {
      testType = 'flutter';
    } else {
      if (flutterTestType.isEmpty) {
        testType = 'test';
      } else {
        testType = flutterTestType;
      }

      logger.detail('Found Flutter $testType test');
    }
  }

  return testType;
}