writeStorageLogFile function

Future<String> writeStorageLogFile({
  1. required TestLogger logger,
  2. required String filePrefix,
  3. String? key,
  4. List<StorageStepDiff> stepDiffs = const [],
  5. Map<String, dynamic>? keys,
})

Implementation

Future<String> writeStorageLogFile({
  required TestLogger logger,
  required String filePrefix,
  String? key,
  List<StorageStepDiff> stepDiffs = const [],
  Map<String, dynamic>? keys,
}) {
  if (key != null && key.isNotEmpty) {
    return logger.writeLogFile(
      testId: filePrefix,
      name: 'storage_$key',
      content: _prettyJson(StorageManager().read(key)),
      extension: 'json',
    );
  }

  final snapshot = keys ??
      <String, dynamic>{
        for (final storageKey in StorageManager().getKeys())
          storageKey: StorageManager().read(storageKey),
      };
  final content = _prettyJson({
    'keys': snapshot,
    'steps': [for (final diff in stepDiffs) diff.toJson()],
  });
  return logger.writeLogFile(
    testId: filePrefix,
    name: 'storage',
    content: content,
    extension: 'json',
  );
}