23 lines
1.1 KiB
Dart
23 lines
1.1 KiB
Dart
import 'dart:async';
|
|
import 'dart:io';
|
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:jj_mkvmaker/core/vault_view.dart';
|
|
import 'package:jj_mkvmaker/platform/windows/desktop_storage_service.dart';
|
|
|
|
/// 모든 단위 시험 파일 앞에 돈다 (flutter_test 의 flutter_test_config).
|
|
/// 관리자 지시 (10/20): 앱 임시 폴더 ([DesktopStorageService.tempDirectory] = %TEMP%\jj_mkvmaker) 를 시험이 남겼다.
|
|
/// 시험 파일들은 나란히 돌아 같은 폴더를 끝에 지우면 서로 부딪치므로, 파일마다 따로 jj_store_… 를 주고 그 파일이 끝나면 지운다
|
|
Future<void> testExecutable(FutureOr<void> Function() testMain) async {
|
|
final root = Directory.systemTemp.createTempSync('jj_store_');
|
|
DesktopStorageService.tempRoot = root.path;
|
|
// 암호 보관함 보기 임시 폴더도 (기본은 실제 앱 데이터 폴더 - 시험이 건드리지 않게)
|
|
vaultViewRootOf = () async => Directory('${root.path}${Platform.pathSeparator}vault_view');
|
|
tearDownAll(() {
|
|
try {
|
|
root.deleteSync(recursive: true);
|
|
} catch (_) {}
|
|
});
|
|
await testMain();
|
|
}
|