JJ_MKVMaker/test/explorer_device_contract_te...

27 lines
1.2 KiB
Dart

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.fs.volumes()).isNotEmpty, isTrue);
expect([await d.fs.probe(tmp.path), await d.fs.probe('${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.fs.volumes(), [('T:\\', 'T:')]);
expect([d.androidTrash, d.androidPaths], [true, Platform.isAndroid]);
});
}