Skip to content

Commit fe7d52d

Browse files
[webview_flutter] Minor test cleanup (flutter#6031)
- Remove an iOS-only integration test from the app-facing package; there's already a copy in the iOS implementation package, and it's not relevant to the app-facing API. - Remove dead iOS native test code; the actual iOS native tests are all in the iOS package now, and this code isn't being run (since the repo tooling doesn't try to run native tests for plugins that don't have inline native implementations) Fixes flutter#91004
1 parent 11152d2 commit fe7d52d

File tree

10 files changed

+2
-644
lines changed

10 files changed

+2
-644
lines changed

packages/webview_flutter/webview_flutter/example/integration_test/legacy/webview_flutter_test.dart

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -520,57 +520,6 @@ Future<void> main() async {
520520
await controller.runJavascriptReturningResult('isFullScreen();');
521521
expect(fullScreen, _webviewBool(false));
522522
});
523-
524-
// allowsInlineMediaPlayback is a noop on Android, so it is skipped.
525-
testWidgets(
526-
'Video plays full screen when allowsInlineMediaPlayback is false',
527-
(WidgetTester tester) async {
528-
final Completer<WebViewController> controllerCompleter =
529-
Completer<WebViewController>();
530-
final Completer<void> pageLoaded = Completer<void>();
531-
final Completer<void> videoPlaying = Completer<void>();
532-
533-
await tester.pumpWidget(
534-
Directionality(
535-
textDirection: TextDirection.ltr,
536-
child: WebView(
537-
initialUrl: 'data:text/html;charset=utf-8;base64,$videoTestBase64',
538-
onWebViewCreated: (WebViewController controller) {
539-
controllerCompleter.complete(controller);
540-
},
541-
javascriptMode: JavascriptMode.unrestricted,
542-
javascriptChannels: <JavascriptChannel>{
543-
JavascriptChannel(
544-
name: 'VideoTestTime',
545-
onMessageReceived: (JavascriptMessage message) {
546-
final double currentTime = double.parse(message.message);
547-
// Let it play for at least 1 second to make sure the related video's properties are set.
548-
if (currentTime > 1 && !videoPlaying.isCompleted) {
549-
videoPlaying.complete(null);
550-
}
551-
},
552-
),
553-
},
554-
onPageFinished: (String url) {
555-
pageLoaded.complete(null);
556-
},
557-
initialMediaPlaybackPolicy: AutoMediaPlaybackPolicy.always_allow,
558-
),
559-
),
560-
);
561-
final WebViewController controller = await controllerCompleter.future;
562-
await pageLoaded.future;
563-
564-
// Pump once to trigger the video play.
565-
await tester.pump();
566-
567-
// Makes sure we get the correct event that indicates the video is actually playing.
568-
await videoPlaying.future;
569-
570-
final String fullScreen =
571-
await controller.runJavascriptReturningResult('isFullScreen();');
572-
expect(fullScreen, _webviewBool(true));
573-
}, skip: Platform.isAndroid);
574523
});
575524

576525
group('Audio playback policy', () {

packages/webview_flutter/webview_flutter/example/integration_test/webview_flutter_test.dart

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -348,52 +348,6 @@ Future<void> main() async {
348348
.runJavaScriptReturningResult('isFullScreen();') as bool;
349349
expect(fullScreen, false);
350350
});
351-
352-
// allowsInlineMediaPlayback is a noop on Android, so it is skipped.
353-
testWidgets(
354-
'Video plays full screen when allowsInlineMediaPlayback is false',
355-
(WidgetTester tester) async {
356-
final Completer<void> pageLoaded = Completer<void>();
357-
final Completer<void> videoPlaying = Completer<void>();
358-
359-
final WebViewController controller =
360-
WebViewController.fromPlatformCreationParams(
361-
WebKitWebViewControllerCreationParams(
362-
mediaTypesRequiringUserAction: const <PlaybackMediaTypes>{},
363-
),
364-
);
365-
unawaited(controller.setJavaScriptMode(JavaScriptMode.unrestricted));
366-
unawaited(controller.setNavigationDelegate(
367-
NavigationDelegate(onPageFinished: (_) => pageLoaded.complete()),
368-
));
369-
unawaited(controller.addJavaScriptChannel(
370-
'VideoTestTime',
371-
onMessageReceived: (JavaScriptMessage message) {
372-
final double currentTime = double.parse(message.message);
373-
// Let it play for at least 1 second to make sure the related video's properties are set.
374-
if (currentTime > 1 && !videoPlaying.isCompleted) {
375-
videoPlaying.complete(null);
376-
}
377-
},
378-
));
379-
unawaited(controller.loadRequest(
380-
Uri.parse(
381-
'data:text/html;charset=utf-8;base64,$videoTestBase64',
382-
),
383-
));
384-
385-
await tester.pumpWidget(WebViewWidget(controller: controller));
386-
await tester.pumpAndSettle();
387-
388-
await pageLoaded.future;
389-
390-
// Makes sure we get the correct event that indicates the video is actually playing.
391-
await videoPlaying.future;
392-
393-
final bool fullScreen = await controller
394-
.runJavaScriptReturningResult('isFullScreen();') as bool;
395-
expect(fullScreen, true);
396-
}, skip: Platform.isAndroid);
397351
});
398352

399353
group('Audio playback policy', () {

packages/webview_flutter/webview_flutter/example/ios/Podfile

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,6 @@ flutter_ios_podfile_setup
2929

3030
target 'Runner' do
3131
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
32-
33-
target 'RunnerTests' do
34-
inherit! :search_paths
35-
36-
# Matches test_spec dependency.
37-
pod 'OCMock', '3.5'
38-
end
3932
end
4033

4134
post_install do |installer|

0 commit comments

Comments
 (0)