[wifi_info_flutter] Migrate to null safety (#3425)
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md b/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
index fa68eed..c98140e 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
+++ b/packages/wifi_info_flutter/wifi_info_flutter/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 2.0.0-nullsafety
+
+* Migrate to null safety.
+
## 1.0.4
* Android: Add Log warning for unsatisfied requirement(s) in Android P or higher.
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/integration_test/wifi_info_test.dart b/packages/wifi_info_flutter/wifi_info_flutter/integration_test/wifi_info_test.dart
index 103dc54..4760b88 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/integration_test/wifi_info_test.dart
+++ b/packages/wifi_info_flutter/wifi_info_flutter/integration_test/wifi_info_test.dart
@@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+// @dart = 2.9
+
import 'dart:io';
import 'package:integration_test/integration_test.dart';
import 'package:flutter_test/flutter_test.dart';
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/lib/wifi_info_flutter.dart b/packages/wifi_info_flutter/wifi_info_flutter/lib/wifi_info_flutter.dart
index 1183bf6..a2a69d1 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/lib/wifi_info_flutter.dart
+++ b/packages/wifi_info_flutter/wifi_info_flutter/lib/wifi_info_flutter.dart
@@ -13,19 +13,14 @@
/// Checks WI-FI status and more.
class WifiInfo {
+ WifiInfo._();
+
/// Constructs a singleton instance of [WifiInfo].
///
/// [WifiInfo] is designed to work as a singleton.
- factory WifiInfo() {
- if (_singleton == null) {
- _singleton = WifiInfo._();
- }
- return _singleton;
- }
+ factory WifiInfo() => _singleton;
- WifiInfo._();
-
- static WifiInfo _singleton;
+ static final WifiInfo _singleton = WifiInfo._();
static WifiInfoFlutterPlatform get _platform =>
WifiInfoFlutterPlatform.instance;
@@ -36,7 +31,7 @@
///
/// From android 8.0 onwards the GPS must be ON (high accuracy)
/// in order to be able to obtain the SSID.
- Future<String> getWifiName() {
+ Future<String?> getWifiName() {
return _platform.getWifiName();
}
@@ -46,12 +41,12 @@
///
/// From Android 8.0 onwards the GPS must be ON (high accuracy)
/// in order to be able to obtain the BSSID.
- Future<String> getWifiBSSID() {
+ Future<String?> getWifiBSSID() {
return _platform.getWifiBSSID();
}
/// Obtains the IP address of the connected wifi network
- Future<String> getWifiIP() {
+ Future<String?> getWifiIP() {
return _platform.getWifiIP();
}
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/pubspec.yaml b/packages/wifi_info_flutter/wifi_info_flutter/pubspec.yaml
index b8306a0..0fbc278 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/pubspec.yaml
+++ b/packages/wifi_info_flutter/wifi_info_flutter/pubspec.yaml
@@ -1,20 +1,18 @@
name: wifi_info_flutter
description: A new flutter plugin project.
-version: 1.0.4
+version: 2.0.0-nullsafety
homepage: https://github.com/flutter/plugins/tree/master/packages/wifi_info_flutter/wifi_info_flutter
environment:
- sdk: ">=2.7.0 <3.0.0"
+ sdk: ">=2.12.0-0 <3.0.0"
flutter: ">=1.20.0"
dependencies:
flutter:
sdk: flutter
- wifi_info_flutter_platform_interface: ^1.0.0
+ wifi_info_flutter_platform_interface: ^2.0.0-nullsafety
dev_dependencies:
- mockito: ^4.1.1
- plugin_platform_interface: ^1.0.0
integration_test:
path: ../../integration_test
flutter_test:
diff --git a/packages/wifi_info_flutter/wifi_info_flutter/test/wifi_info_flutter_test.dart b/packages/wifi_info_flutter/wifi_info_flutter/test/wifi_info_flutter_test.dart
index a3a5517..19e84f6 100644
--- a/packages/wifi_info_flutter/wifi_info_flutter/test/wifi_info_flutter_test.dart
+++ b/packages/wifi_info_flutter/wifi_info_flutter/test/wifi_info_flutter_test.dart
@@ -2,13 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-// @dart = 2.8
-
import 'package:wifi_info_flutter/wifi_info_flutter.dart';
import 'package:wifi_info_flutter_platform_interface/wifi_info_flutter_platform_interface.dart';
import 'package:flutter_test/flutter_test.dart';
-import 'package:plugin_platform_interface/plugin_platform_interface.dart';
-import 'package:mockito/mockito.dart';
const String kWifiNameResult = '1337wifi';
const String kWifiBSSIDResult = 'c0:ff:33:c0:d3:55';
@@ -20,7 +16,7 @@
void main() {
group('$WifiInfo', () {
- WifiInfo wifiInfo;
+ late WifiInfo wifiInfo;
MockWifiInfoFlutterPlatform fakePlatform;
setUp(() async {
@@ -30,17 +26,17 @@
});
test('getWifiName', () async {
- String result = await wifiInfo.getWifiName();
+ String? result = await wifiInfo.getWifiName();
expect(result, kWifiNameResult);
});
test('getWifiBSSID', () async {
- String result = await wifiInfo.getWifiBSSID();
+ String? result = await wifiInfo.getWifiBSSID();
expect(result, kWifiBSSIDResult);
});
test('getWifiIP', () async {
- String result = await wifiInfo.getWifiIP();
+ String? result = await wifiInfo.getWifiIP();
expect(result, kWifiIpAddressResult);
});
@@ -58,27 +54,30 @@
});
}
-class MockWifiInfoFlutterPlatform extends Mock
- with MockPlatformInterfaceMixin
- implements WifiInfoFlutterPlatform {
- Future<String> getWifiName() async {
+class MockWifiInfoFlutterPlatform extends WifiInfoFlutterPlatform {
+ @override
+ Future<String?> getWifiName() async {
return kWifiNameResult;
}
- Future<String> getWifiBSSID() async {
+ @override
+ Future<String?> getWifiBSSID() async {
return kWifiBSSIDResult;
}
- Future<String> getWifiIP() async {
+ @override
+ Future<String?> getWifiIP() async {
return kWifiIpAddressResult;
}
+ @override
Future<LocationAuthorizationStatus> requestLocationServiceAuthorization({
bool requestAlwaysLocationUsage = false,
}) async {
return kRequestLocationResult;
}
+ @override
Future<LocationAuthorizationStatus> getLocationServiceAuthorization() async {
return kGetLocationResult;
}