diff --git a/integration_test/browser_real_test.dart b/integration_test/browser_real_test.dart index 69e25ca..3e8a1bd 100644 --- a/integration_test/browser_real_test.dart +++ b/integration_test/browser_real_test.dart @@ -45,9 +45,9 @@ void main() { for (var i = 0; i < 300 && !videoSeen; i++) { await tester.runAsync(() => Future.delayed(const Duration(milliseconds: 100))); await tester.pump(); - final btn = tester.widget(find.ancestor( - of: find.text('다운로드'), matching: find.byWidgetPredicate((w) => w is FilledButton))); - videoSeen = btn.onPressed != null; + // 137: 동영상을 찾은 페이지만 [다운로드] 가 꽉 찬 버튼 (못 찾으면 테두리만 있는 버튼) + final filled = find.ancestor(of: find.text('다운로드'), matching: find.byWidgetPredicate((w) => w is FilledButton)); + videoSeen = filled.evaluate().isNotEmpty && tester.widget(filled.first).onPressed != null; } // ignore: avoid_print print('RESULT 동영상 감지(다운로드 버튼 켜짐): $videoSeen'); diff --git a/integration_test/tor_dns_real_test.dart b/integration_test/tor_dns_real_test.dart index 2c137ac..acadafb 100644 --- a/integration_test/tor_dns_real_test.dart +++ b/integration_test/tor_dns_real_test.dart @@ -146,7 +146,8 @@ void main() { expect(rtc, 'undefined'); // 5. 파일 링크: 받지 않고 안내 (Windows 는 packages/flutter_inappwebview_windows/JJ_PATCH.md 의 DownloadStarting) - const fileUrl = 'https://dist.torproject.org/torbrowser/15.0.24/tor-expert-bundle-windows-x86_64-15.0.24.tar.gz.asc'; + // dist.torproject.org 는 예전 판을 지운다 (10/17 15.0.24 가 404) - 오래 남는 archive 의 같은 파일 (833B, application/pgp-keys) + const fileUrl = 'https://archive.torproject.org/tor-package-archive/torbrowser/15.0.24/tor-expert-bundle-windows-x86_64-15.0.24.tar.gz.asc'; await tester.runAsync(() async => TorPage.debugNav?.load(fileUrl)); var told = false; for (var i = 0; i < 120 && !told; i++) { diff --git a/integration_test/windows_check_shot_test.dart b/integration_test/windows_check_shot_test.dart index d9cfb70..fc82b1a 100644 --- a/integration_test/windows_check_shot_test.dart +++ b/integration_test/windows_check_shot_test.dart @@ -203,10 +203,16 @@ void main() { await t.tap(find.widgetWithText(FilledButton, '확인')); await settle(t, 6); await shot(t, '37_unc_server_only_$tag'); + // 서버만 넣으면 창이 닫히지 않고 그 자리에서 "공유 폴더 이름까지" 를 알린다 - 닫고 다음으로 + await t.tap(find.widgetWithText(TextButton, '취소')); + await settle(t, 4); await enter(p.join(tmp.path, '없는 폴더')); await t.tap(find.widgetWithText(FilledButton, '확인')); await settle(t, 6); await shot(t, '37_missing_path_$tag'); + // 146 · 37-2: 없는 폴더도 창을 닫지 않고 칸 아래에 알린다 - 닫는다 (다음 크기에서 창이 남아 가리지 않게) + await t.tap(find.widgetWithText(TextButton, '취소')); + await settle(t, 4); } } finally { await t.pumpWidget(const SizedBox());