setPubspec function

Future<void> setPubspec(
  1. Directory testDir, {
  2. required String? version,
})

Create a pubspec.yaml file with a version

Implementation

Future<void> setPubspec(Directory testDir, {required String? version}) async {
  final file = File('${testDir.path}/pubspec.yaml');

  var content = await file.exists()
      ? await file.readAsString()
      : 'name: test\nversion: $version\n';

  if (version == null) {
    content = content.replaceAll(RegExp(r'version: .*'), '');
  } else {
    content = content.replaceAll(RegExp(r'version: .*'), 'version: $version');
  }

  await file.writeAsString(content);
}