점검 시험: 복사 · 이동 뒤 진행 패널이 다 내려간 뒤 찍음 (PC 빠르기에 따라 캡처가 달라지던 것 - 기대값 그대로)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>modular
parent
0943427cd0
commit
f9f67f11f4
|
|
@ -12,6 +12,7 @@ import 'package:jj_mkvmaker/app/i18n_controller.dart';
|
||||||
import 'package:jj_mkvmaker/platform/windows/desktop_storage_service.dart';
|
import 'package:jj_mkvmaker/platform/windows/desktop_storage_service.dart';
|
||||||
import 'package:jj_mkvmaker/platform/windows/process_media_tool.dart';
|
import 'package:jj_mkvmaker/platform/windows/process_media_tool.dart';
|
||||||
import 'package:jj_mkvmaker/services/platform_services.dart';
|
import 'package:jj_mkvmaker/services/platform_services.dart';
|
||||||
|
import 'package:jj_mkvmaker/ui/explorer/job_view.dart' show TransferJobView;
|
||||||
import 'package:jj_mkvmaker/ui/explorer_page.dart';
|
import 'package:jj_mkvmaker/ui/explorer_page.dart';
|
||||||
import 'package:jj_mkvmaker/ui/theme.dart';
|
import 'package:jj_mkvmaker/ui/theme.dart';
|
||||||
import 'package:path/path.dart' as p;
|
import 'package:path/path.dart' as p;
|
||||||
|
|
@ -95,6 +96,15 @@ void main() {
|
||||||
print('[$w] $step: ${texts.isEmpty ? '(뜬 창 없음)' : texts.join(' | ')}');
|
print('[$w] $step: ${texts.isEmpty ? '(뜬 창 없음)' : texts.join(' | ')}');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 복사 · 이동이 끝나 진행 패널이 다 내려갈 때까지 (실제 시간, 10초까지) - 캡처가 PC 빠르기에 따라 달라지지 않게
|
||||||
|
Future<void> jobsGone() async {
|
||||||
|
for (var i = 0; i < 100 && find.byType(TransferJobView).evaluate().isNotEmpty; i++) {
|
||||||
|
await t.runAsync(() => Future<void>.delayed(const Duration(milliseconds: 100)));
|
||||||
|
await t.pump(const Duration(milliseconds: 100));
|
||||||
|
}
|
||||||
|
await settle();
|
||||||
|
}
|
||||||
|
|
||||||
// 한 단계: 실패해도 다음 단계로 (못 찾은 것 자체가 점검 결과)
|
// 한 단계: 실패해도 다음 단계로 (못 찾은 것 자체가 점검 결과)
|
||||||
Future<void> step(String name, Future<void> Function() act) async {
|
Future<void> step(String name, Future<void> Function() act) async {
|
||||||
try {
|
try {
|
||||||
|
|
@ -167,6 +177,7 @@ void main() {
|
||||||
await settle();
|
await settle();
|
||||||
await t.tap(txt('C:'));
|
await t.tap(txt('C:'));
|
||||||
}
|
}
|
||||||
|
await jobsGone();
|
||||||
});
|
});
|
||||||
await settle(20);
|
await settle(20);
|
||||||
files('복사 뒤');
|
files('복사 뒤');
|
||||||
|
|
@ -201,6 +212,7 @@ void main() {
|
||||||
await settle();
|
await settle();
|
||||||
await t.tap(tip('붙여넣기'));
|
await t.tap(tip('붙여넣기'));
|
||||||
}
|
}
|
||||||
|
await jobsGone();
|
||||||
});
|
});
|
||||||
await settle(20);
|
await settle(20);
|
||||||
files('이동 뒤');
|
files('이동 뒤');
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue