writeLogFile method

Future<String> writeLogFile({
  1. required String testId,
  2. required String name,
  3. required String content,
  4. String extension = 'log',
})

Implementation

Future<String> writeLogFile({
  required String testId,
  required String name,
  required String content,
  String extension = 'log',
}) async {
  final directory = ensembleTestArtifactDirectory('logs');
  await directory.create(recursive: true);
  final safeTestId = _safeFileName(testId);
  final safeName = _safeFileName(name);
  final suffix = _safeFileName(_artifactSuffix);
  final suffixPart = suffix.isEmpty ? '' : '_$suffix';
  final fileName = safeTestId.isEmpty
      ? '$safeName$suffixPart.${_safeExtension(extension)}'
      : '${safeTestId}_$safeName$suffixPart.${_safeExtension(extension)}';
  final file = ensembleTestArtifactFile('logs', fileName);
  await file.writeAsString(content);
  return ensembleTestArtifactDisplayPath('logs', fileName);
}