From f63ef67193ba4e528cb3bd329cf46d586a5b37bf Mon Sep 17 00:00:00 2001 From: "Bodhi Mulders (BeMacized)" Date: Thu, 3 Feb 2022 16:23:23 +0100 Subject: [PATCH] Implement PR Feedback Implement PR Feedback --- .../url_launcher_android/CHANGELOG.md | 2 +- .../lib/url_launcher_android.dart | 3 +- .../test/url_launcher_android_test.dart | 64 +------- .../url_launcher_ios/CHANGELOG.md | 2 +- .../lib/url_launcher_ios.dart | 3 +- .../test/url_launcher_ios_test.dart | 89 +---------- .../url_launcher_linux/CHANGELOG.md | 2 +- .../lib/url_launcher_linux.dart | 4 +- .../test/url_launcher_linux_test.dart | 142 +----------------- .../url_launcher_macos/CHANGELOG.md | 2 +- .../lib/url_launcher_macos.dart | 4 +- .../url_launcher_macos/pubspec.yaml | 2 +- .../test/url_launcher_macos_test.dart | 140 +---------------- .../url_launcher_web/example/pubspec.yaml | 1 + .../url_launcher_web/pubspec.yaml | 1 - .../url_launcher_windows/CHANGELOG.md | 2 +- .../lib/url_launcher_windows.dart | 4 +- .../url_launcher_windows/pubspec.yaml | 2 +- .../test/url_launcher_windows_test.dart | 142 +----------------- 19 files changed, 43 insertions(+), 568 deletions(-) diff --git a/packages/url_launcher/url_launcher_android/CHANGELOG.md b/packages/url_launcher/url_launcher_android/CHANGELOG.md index 2b9183dcb2fa..9ec1f65911c6 100644 --- a/packages/url_launcher/url_launcher_android/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_android/CHANGELOG.md @@ -1,6 +1,6 @@ ## 6.0.15 -* Moved away from shared method channel implementation. +* Switches to an in-package method channel implementation. ## 6.0.14 diff --git a/packages/url_launcher/url_launcher_android/lib/url_launcher_android.dart b/packages/url_launcher/url_launcher_android/lib/url_launcher_android.dart index e2a653125869..52c46356489d 100644 --- a/packages/url_launcher/url_launcher_android/lib/url_launcher_android.dart +++ b/packages/url_launcher/url_launcher_android/lib/url_launcher_android.dart @@ -11,7 +11,7 @@ import 'package:url_launcher_platform_interface/url_launcher_platform_interface. const MethodChannel _channel = MethodChannel('plugins.flutter.io/url_launcher_android'); -/// An implementation of [UrlLauncherPlatform] that uses method channels. +/// An implementation of [UrlLauncherPlatform] for Android. class UrlLauncherAndroid extends UrlLauncherPlatform { /// Registers this class as the default instance of [UrlLauncherPlatform]. static void registerWith() { @@ -49,7 +49,6 @@ class UrlLauncherAndroid extends UrlLauncherPlatform { 'launch', { 'url': url, - 'useSafariVC': useSafariVC, 'useWebView': useWebView, 'enableJavaScript': enableJavaScript, 'enableDomStorage': enableDomStorage, diff --git a/packages/url_launcher/url_launcher_android/test/url_launcher_android_test.dart b/packages/url_launcher/url_launcher_android/test/url_launcher_android_test.dart index 1837d0699ff1..892b5de88174 100644 --- a/packages/url_launcher/url_launcher_android/test/url_launcher_android_test.dart +++ b/packages/url_launcher/url_launcher_android/test/url_launcher_android_test.dart @@ -5,6 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:url_launcher_android/url_launcher_android.dart'; +import 'package:url_launcher_platform_interface/url_launcher_platform_interface.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -27,6 +28,11 @@ void main() { log.clear(); }); + test('registers instance', () { + UrlLauncherAndroid.registerWith(); + expect(UrlLauncherPlatform.instance, isA()); + }); + test('canLaunch', () async { await launcher.canLaunch('http://example.com/'); expect( @@ -60,7 +66,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, @@ -86,7 +91,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, @@ -97,32 +101,6 @@ void main() { ); }); - test('launch force SafariVC', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch universal links only', () async { await launcher.launch( 'http://example.com/', @@ -138,7 +116,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': false, 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, @@ -164,7 +141,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, 'useWebView': true, 'enableJavaScript': false, 'enableDomStorage': false, @@ -190,7 +166,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, 'useWebView': true, 'enableJavaScript': true, 'enableDomStorage': false, @@ -216,7 +191,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, 'useWebView': true, 'enableJavaScript': false, 'enableDomStorage': true, @@ -227,32 +201,6 @@ void main() { ); }); - test('launch force SafariVC to false', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: false, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch should return false if platform returns null', () async { final bool launched = await launcher.launch( 'http://example.com/', diff --git a/packages/url_launcher/url_launcher_ios/CHANGELOG.md b/packages/url_launcher/url_launcher_ios/CHANGELOG.md index 112b72626301..6e0c8d6a20d7 100644 --- a/packages/url_launcher/url_launcher_ios/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_ios/CHANGELOG.md @@ -1,6 +1,6 @@ ## 6.0.15 -* Moved away from shared method channel implementation. +* Switches to an in-package method channel implementation. ## 6.0.14 diff --git a/packages/url_launcher/url_launcher_ios/lib/url_launcher_ios.dart b/packages/url_launcher/url_launcher_ios/lib/url_launcher_ios.dart index c6eb61e1ca4f..84b811b25728 100644 --- a/packages/url_launcher/url_launcher_ios/lib/url_launcher_ios.dart +++ b/packages/url_launcher/url_launcher_ios/lib/url_launcher_ios.dart @@ -11,7 +11,7 @@ import 'package:url_launcher_platform_interface/url_launcher_platform_interface. const MethodChannel _channel = MethodChannel('plugins.flutter.io/url_launcher_ios'); -/// An implementation of [UrlLauncherPlatform] that uses method channels. +/// An implementation of [UrlLauncherPlatform] for iOS. class UrlLauncherIOS extends UrlLauncherPlatform { /// Registers this class as the default instance of [UrlLauncherPlatform]. static void registerWith() { @@ -50,7 +50,6 @@ class UrlLauncherIOS extends UrlLauncherPlatform { { 'url': url, 'useSafariVC': useSafariVC, - 'useWebView': useWebView, 'enableJavaScript': enableJavaScript, 'enableDomStorage': enableDomStorage, 'universalLinksOnly': universalLinksOnly, diff --git a/packages/url_launcher/url_launcher_ios/test/url_launcher_ios_test.dart b/packages/url_launcher/url_launcher_ios/test/url_launcher_ios_test.dart index ac05294d42a5..167e5d4b59da 100644 --- a/packages/url_launcher/url_launcher_ios/test/url_launcher_ios_test.dart +++ b/packages/url_launcher/url_launcher_ios/test/url_launcher_ios_test.dart @@ -5,6 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:url_launcher_ios/url_launcher_ios.dart'; +import 'package:url_launcher_platform_interface/url_launcher_platform_interface.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -27,6 +28,11 @@ void main() { log.clear(); }); + test('registers instance', () { + UrlLauncherIOS.registerWith(); + expect(UrlLauncherPlatform.instance, isA()); + }); + test('canLaunch', () async { await launcher.canLaunch('http://example.com/'); expect( @@ -61,7 +67,6 @@ void main() { isMethodCall('launch', arguments: { 'url': 'http://example.com/', 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -87,7 +92,6 @@ void main() { isMethodCall('launch', arguments: { 'url': 'http://example.com/', 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -113,7 +117,6 @@ void main() { isMethodCall('launch', arguments: { 'url': 'http://example.com/', 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -139,7 +142,6 @@ void main() { isMethodCall('launch', arguments: { 'url': 'http://example.com/', 'useSafariVC': false, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': true, @@ -149,84 +151,6 @@ void main() { ); }); - test('launch force WebView', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable javascript', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: true, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': true, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable DOM storage', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: true, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': true, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch force SafariVC to false', () async { await launcher.launch( 'http://example.com/', @@ -243,7 +167,6 @@ void main() { isMethodCall('launch', arguments: { 'url': 'http://example.com/', 'useSafariVC': false, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, diff --git a/packages/url_launcher/url_launcher_linux/CHANGELOG.md b/packages/url_launcher/url_launcher_linux/CHANGELOG.md index a8ab2f9b84c2..f3460947099e 100644 --- a/packages/url_launcher/url_launcher_linux/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_linux/CHANGELOG.md @@ -1,6 +1,6 @@ ## 2.0.4 -* Moved away from shared method channel implementation. +* Switches to an in-package method channel implementation. ## 2.0.3 diff --git a/packages/url_launcher/url_launcher_linux/lib/url_launcher_linux.dart b/packages/url_launcher/url_launcher_linux/lib/url_launcher_linux.dart index f23cbb664c86..87ef3142e3f6 100644 --- a/packages/url_launcher/url_launcher_linux/lib/url_launcher_linux.dart +++ b/packages/url_launcher/url_launcher_linux/lib/url_launcher_linux.dart @@ -11,7 +11,7 @@ import 'package:url_launcher_platform_interface/url_launcher_platform_interface. const MethodChannel _channel = MethodChannel('plugins.flutter.io/url_launcher_linux'); -/// An implementation of [UrlLauncherPlatform] that uses method channels. +/// An implementation of [UrlLauncherPlatform] for Linux. class UrlLauncherLinux extends UrlLauncherPlatform { /// Registers this class as the default instance of [UrlLauncherPlatform]. static void registerWith() { @@ -44,8 +44,6 @@ class UrlLauncherLinux extends UrlLauncherPlatform { 'launch', { 'url': url, - 'useSafariVC': useSafariVC, - 'useWebView': useWebView, 'enableJavaScript': enableJavaScript, 'enableDomStorage': enableDomStorage, 'universalLinksOnly': universalLinksOnly, diff --git a/packages/url_launcher/url_launcher_linux/test/url_launcher_linux_test.dart b/packages/url_launcher/url_launcher_linux/test/url_launcher_linux_test.dart index 340e17ec3de7..f8c5f81990fc 100644 --- a/packages/url_launcher/url_launcher_linux/test/url_launcher_linux_test.dart +++ b/packages/url_launcher/url_launcher_linux/test/url_launcher_linux_test.dart @@ -5,6 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:url_launcher_linux/url_launcher_linux.dart'; +import 'package:url_launcher_platform_interface/url_launcher_platform_interface.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -27,6 +28,11 @@ void main() { log.clear(); }); + test('registers instance', () { + UrlLauncherLinux.registerWith(); + expect(UrlLauncherPlatform.instance, isA()); + }); + test('canLaunch', () async { await launcher.canLaunch('http://example.com/'); expect( @@ -60,8 +66,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -86,8 +90,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -97,32 +99,6 @@ void main() { ); }); - test('launch force SafariVC', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch universal links only', () async { await launcher.launch( 'http://example.com/', @@ -138,8 +114,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': true, @@ -149,110 +123,6 @@ void main() { ); }); - test('launch force WebView', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable javascript', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: true, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': true, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable DOM storage', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: true, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': true, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force SafariVC to false', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: false, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch should return false if platform returns null', () async { final bool launched = await launcher.launch( 'http://example.com/', diff --git a/packages/url_launcher/url_launcher_macos/CHANGELOG.md b/packages/url_launcher/url_launcher_macos/CHANGELOG.md index b41d7962a042..2bf9de938956 100644 --- a/packages/url_launcher/url_launcher_macos/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_macos/CHANGELOG.md @@ -1,6 +1,6 @@ ## 2.0.4 -* Moved away from shared method channel implementation. +* Switches to an in-package method channel implementation. ## 2.0.3 diff --git a/packages/url_launcher/url_launcher_macos/lib/url_launcher_macos.dart b/packages/url_launcher/url_launcher_macos/lib/url_launcher_macos.dart index d105625bd2d0..7dc1340083ae 100644 --- a/packages/url_launcher/url_launcher_macos/lib/url_launcher_macos.dart +++ b/packages/url_launcher/url_launcher_macos/lib/url_launcher_macos.dart @@ -11,7 +11,7 @@ import 'package:url_launcher_platform_interface/url_launcher_platform_interface. const MethodChannel _channel = MethodChannel('plugins.flutter.io/url_launcher_macos'); -/// An implementation of [UrlLauncherPlatform] that uses method channels. +/// An implementation of [UrlLauncherPlatform] for macOS. class UrlLauncherMacOS extends UrlLauncherPlatform { /// Registers this class as the default instance of [UrlLauncherPlatform]. static void registerWith() { @@ -44,8 +44,6 @@ class UrlLauncherMacOS extends UrlLauncherPlatform { 'launch', { 'url': url, - 'useSafariVC': useSafariVC, - 'useWebView': useWebView, 'enableJavaScript': enableJavaScript, 'enableDomStorage': enableDomStorage, 'universalLinksOnly': universalLinksOnly, diff --git a/packages/url_launcher/url_launcher_macos/pubspec.yaml b/packages/url_launcher/url_launcher_macos/pubspec.yaml index e0fc03fb7333..0cd25d2fc3ad 100644 --- a/packages/url_launcher/url_launcher_macos/pubspec.yaml +++ b/packages/url_launcher/url_launcher_macos/pubspec.yaml @@ -25,4 +25,4 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - test: ^1.16.3 \ No newline at end of file + test: ^1.16.3 diff --git a/packages/url_launcher/url_launcher_macos/test/url_launcher_macos_test.dart b/packages/url_launcher/url_launcher_macos/test/url_launcher_macos_test.dart index f2fdc6daeea3..a11135bc924f 100644 --- a/packages/url_launcher/url_launcher_macos/test/url_launcher_macos_test.dart +++ b/packages/url_launcher/url_launcher_macos/test/url_launcher_macos_test.dart @@ -5,6 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:url_launcher_macos/url_launcher_macos.dart'; +import 'package:url_launcher_platform_interface/url_launcher_platform_interface.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -27,6 +28,11 @@ void main() { log.clear(); }); + test('registers instance', () { + UrlLauncherMacOS.registerWith(); + expect(UrlLauncherPlatform.instance, isA()); + }); + test('canLaunch', () async { await launcher.canLaunch('http://example.com/'); expect( @@ -60,8 +66,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -97,32 +101,6 @@ void main() { ); }); - test('launch force SafariVC', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch universal links only', () async { await launcher.launch( 'http://example.com/', @@ -138,8 +116,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': true, @@ -149,110 +125,6 @@ void main() { ); }); - test('launch force WebView', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable javascript', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: true, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': true, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable DOM storage', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: true, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': true, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force SafariVC to false', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: false, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch should return false if platform returns null', () async { final bool launched = await launcher.launch( 'http://example.com/', diff --git a/packages/url_launcher/url_launcher_web/example/pubspec.yaml b/packages/url_launcher/url_launcher_web/example/pubspec.yaml index bface463cfe2..9eb1c3321fc2 100644 --- a/packages/url_launcher/url_launcher_web/example/pubspec.yaml +++ b/packages/url_launcher/url_launcher_web/example/pubspec.yaml @@ -6,6 +6,7 @@ environment: flutter: ">=2.2.0" dependencies: + url_launcher_platform_interface: ^2.0.0 flutter: sdk: flutter diff --git a/packages/url_launcher/url_launcher_web/pubspec.yaml b/packages/url_launcher/url_launcher_web/pubspec.yaml index d0b1ff7c6b57..a48a21387eb3 100644 --- a/packages/url_launcher/url_launcher_web/pubspec.yaml +++ b/packages/url_launcher/url_launcher_web/pubspec.yaml @@ -21,7 +21,6 @@ dependencies: sdk: flutter flutter_web_plugins: sdk: flutter - url_launcher_platform_interface: ^2.0.0 dev_dependencies: flutter_test: diff --git a/packages/url_launcher/url_launcher_windows/CHANGELOG.md b/packages/url_launcher/url_launcher_windows/CHANGELOG.md index c3eee9aefa03..a562da1db97d 100644 --- a/packages/url_launcher/url_launcher_windows/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_windows/CHANGELOG.md @@ -1,6 +1,6 @@ ## 2.0.3 -* Moved away from shared method channel implementation. +* Switches to an in-package method channel implementation. * Adds unit tests. * Updates code for new analysis options. diff --git a/packages/url_launcher/url_launcher_windows/lib/url_launcher_windows.dart b/packages/url_launcher/url_launcher_windows/lib/url_launcher_windows.dart index 61f130d04e84..b0ee8cb1a0b4 100644 --- a/packages/url_launcher/url_launcher_windows/lib/url_launcher_windows.dart +++ b/packages/url_launcher/url_launcher_windows/lib/url_launcher_windows.dart @@ -11,7 +11,7 @@ import 'package:url_launcher_platform_interface/url_launcher_platform_interface. const MethodChannel _channel = MethodChannel('plugins.flutter.io/url_launcher_windows'); -/// An implementation of [UrlLauncherPlatform] that uses method channels. +/// An implementation of [UrlLauncherPlatform] for Windows. class UrlLauncherWindows extends UrlLauncherPlatform { /// Registers this class as the default instance of [UrlLauncherPlatform]. static void registerWith() { @@ -44,8 +44,6 @@ class UrlLauncherWindows extends UrlLauncherPlatform { 'launch', { 'url': url, - 'useSafariVC': useSafariVC, - 'useWebView': useWebView, 'enableJavaScript': enableJavaScript, 'enableDomStorage': enableDomStorage, 'universalLinksOnly': universalLinksOnly, diff --git a/packages/url_launcher/url_launcher_windows/pubspec.yaml b/packages/url_launcher/url_launcher_windows/pubspec.yaml index 8a1171943729..506e9958b72c 100644 --- a/packages/url_launcher/url_launcher_windows/pubspec.yaml +++ b/packages/url_launcher/url_launcher_windows/pubspec.yaml @@ -24,4 +24,4 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - test: ^1.16.3 \ No newline at end of file + test: ^1.16.3 diff --git a/packages/url_launcher/url_launcher_windows/test/url_launcher_windows_test.dart b/packages/url_launcher/url_launcher_windows/test/url_launcher_windows_test.dart index d5890d835fc6..28da3254c6d7 100644 --- a/packages/url_launcher/url_launcher_windows/test/url_launcher_windows_test.dart +++ b/packages/url_launcher/url_launcher_windows/test/url_launcher_windows_test.dart @@ -4,6 +4,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:url_launcher_platform_interface/url_launcher_platform_interface.dart'; import 'package:url_launcher_windows/url_launcher_windows.dart'; void main() { @@ -23,6 +24,11 @@ void main() { final UrlLauncherWindows launcher = UrlLauncherWindows(); + test('registers instance', () { + UrlLauncherWindows.registerWith(); + expect(UrlLauncherPlatform.instance, isA()); + }); + tearDown(() { log.clear(); }); @@ -60,8 +66,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -86,8 +90,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': false, @@ -97,32 +99,6 @@ void main() { ); }); - test('launch force SafariVC', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch universal links only', () async { await launcher.launch( 'http://example.com/', @@ -138,8 +114,6 @@ void main() { [ isMethodCall('launch', arguments: { 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, 'enableJavaScript': false, 'enableDomStorage': false, 'universalLinksOnly': true, @@ -149,110 +123,6 @@ void main() { ); }); - test('launch force WebView', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable javascript', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: true, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': true, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force WebView enable DOM storage', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: true, - useWebView: true, - enableJavaScript: false, - enableDomStorage: true, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': true, - 'useWebView': true, - 'enableJavaScript': false, - 'enableDomStorage': true, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - - test('launch force SafariVC to false', () async { - await launcher.launch( - 'http://example.com/', - useSafariVC: false, - useWebView: false, - enableJavaScript: false, - enableDomStorage: false, - universalLinksOnly: false, - headers: const {}, - ); - expect( - log, - [ - isMethodCall('launch', arguments: { - 'url': 'http://example.com/', - 'useSafariVC': false, - 'useWebView': false, - 'enableJavaScript': false, - 'enableDomStorage': false, - 'universalLinksOnly': false, - 'headers': {}, - }) - ], - ); - }); - test('launch should return false if platform returns null', () async { final bool launched = await launcher.launch( 'http://example.com/',