import 'dart:io'; import 'package:flutter_test/flutter_test.dart'; import 'package:jj_mkvmaker/app/explorer_device.dart'; import 'support/test_explorer_device.dart'; /// 약속 시험: lib/app/explorer_device.dart - 이 기기 그대로 ([RealExplorerDevice]) · 시험용은 정한 것만 바꿈 void main() { test('이 기기: 저장 장치가 하나 이상 · 있는 폴더 = 열림 · 없는 폴더 = 안 열림 · Android 갈래는 이 기기대로', () async { const d = RealExplorerDevice(); final tmp = Directory.systemTemp.createTempSync('jj_dev_'); addTearDown(() => tmp.deleteSync(recursive: true)); expect((await d.listVolumes()).isNotEmpty, isTrue); expect([await d.probeDrive(tmp.path), await d.probeDrive('${tmp.path}${Platform.pathSeparator}none')], [true, false]); expect([d.androidPaths, d.androidTrash, d.nomedia], [Platform.isAndroid, Platform.isAndroid, Platform.isAndroid]); }); test('시험용: 정한 것만 바꾸고 나머지는 이 기기대로', () async { final d = TestExplorerDevice() ..volumes = (() => [('T:\\', 'T:')]) ..trash = true; expect(await d.listVolumes(), [('T:\\', 'T:')]); expect([d.androidTrash, d.androidPaths], [true, Platform.isAndroid]); }); }