Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line numberDiff line numberDiff line change
Expand Up@@ -14,34 +14,34 @@ void main() {
IntegrationTestWidgetsFlutterBinding.ensureInitialized();

group('Connectivity test driver', () {
Connectivity _connectivity;
Connectivity connectivity;

setUpAll(() async {
_connectivity = Connectivity();
connectivity = Connectivity();
});

testWidgets('test connectivity result', (WidgetTester tester) async {
final result = await _connectivity.checkConnectivity();
final result = await connectivity.checkConnectivity();
expect(result, isNotNull);
});

testWidgets('connectivity on Android emulator should be wifi',
(WidgetTester tester) async {
final result = await _connectivity.checkConnectivity();
final result = await connectivity.checkConnectivity();

expect(result, ConnectivityResult.wifi);
}, skip: !Platform.isAndroid);

testWidgets('connectivity on MacOS should be ethernet',
(WidgetTester tester) async {
final result = await _connectivity.checkConnectivity();
final result = await connectivity.checkConnectivity();

expect(result, ConnectivityResult.ethernet);
}, skip: !Platform.isMacOS);

testWidgets('connectivity on Linux should be none',
(WidgetTester tester) async {
final result = await _connectivity.checkConnectivity();
final result = await connectivity.checkConnectivity();

expect(result, ConnectivityResult.none);
}, skip: !Platform.isLinux);
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -37,7 +37,7 @@ class MyHomePage extends StatefulWidget {
final String title;

@override
_MyHomePageState createState() => _MyHomePageState();
State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -11,16 +11,8 @@ dependencies:
path: ../

dependency_overrides:
connectivity_plus_linux:
path: ../../connectivity_plus_linux
connectivity_plus_macos:
path: ../../connectivity_plus_macos
connectivity_plus_platform_interface:
path: ../../connectivity_plus_platform_interface
connectivity_plus_web:
path: ../../connectivity_plus_web
connectivity_plus_windows:
path: ../../connectivity_plus_windows

dev_dependencies:
flutter_driver:
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -10,6 +10,8 @@ import 'package:connectivity_plus_platform_interface/connectivity_plus_platform_
export 'package:connectivity_plus_platform_interface/connectivity_plus_platform_interface.dart'
show ConnectivityResult;

export 'src/connectivity_plus_linux.dart';

Comment thread
miquelbeltran marked this conversation as resolved.
/// Discover network connectivity configurations: Distinguish between WI-FI and cellular, check WI-FI status and more.
class Connectivity {
/// Constructs a singleton instance of [Connectivity].
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -11,10 +11,10 @@ import 'package:nm/nm.dart';
typedef NetworkManagerClientFactory = NetworkManagerClient Function();

/// The Linux implementation of ConnectivityPlatform.
class ConnectivityLinux extends ConnectivityPlatform {
class ConnectivityPlusLinuxPlugin extends ConnectivityPlatform {
/// Register this dart class as the platform implementation for linux
static void registerWith() {
ConnectivityPlatform.instance = ConnectivityLinux();
ConnectivityPlatform.instance = ConnectivityPlusLinuxPlugin();
}

/// Checks the connection status of the device.
Expand Down
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
import 'package:connectivity_plus_platform_interface/connectivity_plus_platform_interface.dart';
import 'package:flutter_web_plugins/flutter_web_plugins.dart';

import 'src/network_information_api_connectivity_plugin.dart';
import 'src/dart_html_connectivity_plugin.dart';
import 'web/network_information_api_connectivity_plugin.dart';
import 'web/dart_html_connectivity_plugin.dart';

/// The web implementation of the ConnectivityPlatform of the Connectivity plugin.
class ConnectivityPlusPlugin extends ConnectivityPlatform {
class ConnectivityPlusWebPlugin extends ConnectivityPlatform {
/// Factory method that initializes the connectivity plugin platform with an instance
/// of the plugin for the web.
static void registerWith(Registrar registrar) {
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -2,10 +2,11 @@ import 'dart:async';
import 'dart:html' as html show window;

import 'package:connectivity_plus_platform_interface/connectivity_plus_platform_interface.dart';
import 'package:connectivity_plus_web/connectivity_plus_web.dart';

import '../connectivity_plus_web.dart';

/// The web implementation of the ConnectivityPlatform of the Connectivity plugin.
class DartHtmlConnectivityPlugin extends ConnectivityPlusPlugin {
class DartHtmlConnectivityPlugin extends ConnectivityPlusWebPlugin {
/// Checks the connection status of the device.
@override
Future<ConnectivityResult> checkConnectivity() async {
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -2,15 +2,16 @@ import 'dart:async';
import 'dart:html' as html show window, NetworkInformation;
import 'dart:js_util';

import 'package:connectivity_plus/src/web/utils/connectivity_result.dart';
import 'package:connectivity_plus_platform_interface/connectivity_plus_platform_interface.dart';
import 'package:connectivity_plus_web/connectivity_plus_web.dart';
import 'package:flutter/foundation.dart';
import 'package:js/js.dart';

import 'utils/connectivity_result.dart';
import '../connectivity_plus_web.dart';

/// The web implementation of the ConnectivityPlatform of the Connectivity plugin.
class NetworkInformationApiConnectivityPlugin extends ConnectivityPlusPlugin {
class NetworkInformationApiConnectivityPlugin
extends ConnectivityPlusWebPlugin {
final html.NetworkInformation _networkInformation;

/// A check to determine if this version of the plugin can be used.
Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -4,19 +4,18 @@
Pod::Spec.new do |s|
s.name = 'connectivity_plus'
s.version = '0.0.1'
s.summary = 'No-op implementation of the macos connectivity to avoid build issues on macos'
s.summary = 'Flutter plugin for checking connectivity'
s.description = <<-DESC
No-op implementation of the connectivity plugin to avoid build issues on macos.
https://github.com/flutter/flutter/issues/46618
Desktop implementation of the connectivity plugin
DESC
s.homepage = 'https://plus.fluttercommunity.dev/'
s.license = { :type => 'BSD', :file => '../LICENSE' }
s.author = { 'Flutter Community Team' => 'authors@fluttercommunity.dev' }
s.source = { :http => 'https://github.com/fluttercommunity/plus_plugins' }
s.documentation_url = 'https://pub.dev/packages/connectivity_plus'
s.source = { :path => '.' }
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.source_files= 'Classes/**/*'
s.dependency 'FlutterMacOS'
s.dependency 'ReachabilitySwift'

s.platform = :osx
s.osx.deployment_target = '10.11'
Expand Down
26 changes: 15 additions & 11 deletions packages/connectivity_plus/connectivity_plus/pubspec.yaml
Original file line numberDiff line numberDiff line change
Expand Up@@ -18,27 +18,31 @@ flutter:
ios:
pluginClass: ConnectivityPlusPlugin
linux:
default_package: connectivity_plus_linux
dartPluginClass: ConnectivityPlusLinuxPlugin
macos:
default_package: connectivity_plus_macos
pluginClass: ConnectivityPlugin
web:
default_package: connectivity_plus_web
pluginClass: ConnectivityPlusWebPlugin
fileName: src/connectivity_plus_web.dart
windows:
default_package: connectivity_plus_windows
pluginClass: ConnectivityPlusWindowsPlugin

dependencies:
flutter:
sdk: flutter
connectivity_plus_platform_interface: ^1.2.0
connectivity_plus_linux: ^1.3.0
connectivity_plus_macos: ^1.2.4
connectivity_plus_web: ^1.2.5
connectivity_plus_windows: ^1.2.2
flutter_web_plugins:
sdk: flutter
connectivity_plus_platform_interface: ^1.2.1
js: ^0.6.3
meta: ^1.8.0
nm: ^0.5.0

dev_dependencies:
flutter_test:
sdk: flutter
test: ^1.21.1
build_runner: ^2.1.11
dbus: ^0.7.5
flutter_lints: ^2.0.1
mockito: ^5.2.0
plugin_platform_interface: ^2.1.2
flutter_lints: ^2.0.1
test: ^1.21.1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
import 'package:connectivity_plus_linux/src/connectivity.dart';
import 'package:connectivity_plus/src/connectivity_plus_linux.dart';
import 'package:connectivity_plus_platform_interface/connectivity_plus_platform_interface.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:mockito/annotations.dart';
Expand All@@ -10,12 +10,12 @@ import 'connectivity_plus_linux_test.mocks.dart';
@GenerateMocks([NetworkManagerClient])
void main() {
test('registered instance', () {
ConnectivityLinux.registerWith();
expect(ConnectivityPlatform.instance, isA<ConnectivityLinux>());
ConnectivityPlusLinuxPlugin.registerWith();
expect(ConnectivityPlatform.instance, isA<ConnectivityPlusLinuxPlugin>());
});

test('bluetooth', () async {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand All@@ -30,7 +30,7 @@ void main() {
});

test('ethernet', () async {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand All@@ -45,7 +45,7 @@ void main() {
});

test('wireless', () async {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand All@@ -60,7 +60,7 @@ void main() {
});

test('vpn', () async {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand All@@ -75,7 +75,7 @@ void main() {
});

test('no connectivity', () async {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand All@@ -87,7 +87,7 @@ void main() {
});

test('connectivity changes', () {
final linux = ConnectivityLinux();
final linux = ConnectivityPlusLinuxPlugin();
linux.createClient = () {
final client = MockNetworkManagerClient();
when(client.connectivity)
Expand Down
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
cmake_minimum_required(VERSION 3.15)
set(PROJECT_NAME "connectivity_plus_windows")
set(PROJECT_NAME "connectivity_plus")
project(${PROJECT_NAME} LANGUAGES CXX)

# This value is used when generating builds using this plugin, so it must
# not be changed
set(PLUGIN_NAME "connectivity_plus_windows_plugin")
set(PLUGIN_NAME "connectivity_plus_plugin")

add_library(${PLUGIN_NAME} SHARED
"connectivity_plus_windows_plugin.cpp"
"connectivity_plus_plugin.cpp"
"network_manager.cpp"
)
apply_standard_settings(${PLUGIN_NAME})
Expand All@@ -23,8 +23,7 @@ target_link_libraries(${PLUGIN_NAME} PRIVATE
)

# List of absolute paths to libraries that should be bundled with the plugin
set(connectivity_plus_windows_bundled_libraries
set(connectivity_plus_bundled_libraries
""
PARENT_SCOPE
)

Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
// clang-format off
#include "include/connectivity_plus_windows/network_manager.h"
#include "include/connectivity_plus/network_manager.h"
// clang-format on
#include "include/connectivity_plus_windows/connectivity_plus_windows_plugin.h"
#include "include/connectivity_plus/connectivity_plus_windows_plugin.h"

#include <flutter/event_channel.h>
#include <flutter/event_sink.h>
Expand Down
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
#ifndef FLUTTER_PLUGIN_CONNECTIVITY_PLUS_WINDOWS_PLUGIN_H_
#define FLUTTER_PLUGIN_CONNECTIVITY_PLUS_WINDOWS_PLUGIN_H_
#ifndef FLUTTER_PLUGIN_CONNECTIVITY_WINDOWS_PLUS_PLUGIN_H_
#define FLUTTER_PLUGIN_CONNECTIVITY_WINDOWS_PLUS_PLUGIN_H_

#include <flutter_plugin_registrar.h>

Expand Down
Original file line numberDiff line numberDiff line change
Expand Up@@ -9,7 +9,7 @@
* See full license text in LICENSE file at top of project tree
*/

#include "include/connectivity_plus_windows/network_manager.h"
#include "include/connectivity_plus/network_manager.h"

#include <iphlpapi.h>
#include <netlistmgr.h>
Expand Down
47 changes: 0 additions & 47 deletions packages/connectivity_plus/connectivity_plus_linux/.gitignore

This file was deleted.

10 changes: 0 additions & 10 deletions packages/connectivity_plus/connectivity_plus_linux/.metadata

This file was deleted.

Loading