Unverified Commit 59e0a2ec authored by Jonah Williams's avatar Jonah Williams Committed by GitHub

[flutter_tools] update device discovery constructors (#61640)

google3 callsites are updated, remove global lookup from constructor parameters.
parent 1b8e6b42
...@@ -17,27 +17,35 @@ import 'adb.dart'; ...@@ -17,27 +17,35 @@ import 'adb.dart';
import 'android_device.dart'; import 'android_device.dart';
import 'android_sdk.dart'; import 'android_sdk.dart';
import 'android_workflow.dart' hide androidWorkflow; import 'android_workflow.dart' hide androidWorkflow;
import 'android_workflow.dart' as workflow show androidWorkflow;
/// Device discovery for Android physical devices and emulators.s /// Device discovery for Android physical devices and emulators.s
class AndroidDevices extends PollingDeviceDiscovery { class AndroidDevices extends PollingDeviceDiscovery {
// TODO(jonahwilliams): make these required after google3 is updated.
AndroidDevices({ AndroidDevices({
AndroidWorkflow androidWorkflow, @required AndroidWorkflow androidWorkflow,
ProcessManager processManager, @required ProcessManager processManager,
Logger logger, @required Logger logger,
AndroidSdk androidSdk, @required AndroidSdk androidSdk,
}) : _androidWorkflow = androidWorkflow ?? workflow.androidWorkflow, FileSystem fileSystem, // TODO(jonahwilliams): remove after rolling into google3
_androidSdk = androidSdk ?? globals.androidSdk, Platform platform,
}) : _androidWorkflow = androidWorkflow,
_androidSdk = androidSdk,
_processUtils = ProcessUtils( _processUtils = ProcessUtils(
logger: logger ?? globals.logger, logger: logger,
processManager: processManager ?? globals.processManager, processManager: processManager,
), ),
_processManager = processManager,
_logger = logger,
_fileSystem = fileSystem ?? globals.fs,
_platform = platform ?? globals.platform,
super('Android devices'); super('Android devices');
final AndroidWorkflow _androidWorkflow; final AndroidWorkflow _androidWorkflow;
final ProcessUtils _processUtils; final ProcessUtils _processUtils;
final AndroidSdk _androidSdk; final AndroidSdk _androidSdk;
final ProcessManager _processManager;
final Logger _logger;
final FileSystem _fileSystem;
final Platform _platform;
@override @override
bool get supportsPlatform => _androidWorkflow.appliesToHostPlatform; bool get supportsPlatform => _androidWorkflow.appliesToHostPlatform;
...@@ -69,6 +77,11 @@ class AndroidDevices extends PollingDeviceDiscovery { ...@@ -69,6 +77,11 @@ class AndroidDevices extends PollingDeviceDiscovery {
text, text,
devices: devices, devices: devices,
timeoutConfiguration: timeoutConfiguration, timeoutConfiguration: timeoutConfiguration,
processManager: _processManager,
logger: _logger,
fileSystem: _fileSystem,
androidSdk: _androidSdk,
platform: _platform,
); );
return devices; return devices;
} }
...@@ -90,6 +103,11 @@ class AndroidDevices extends PollingDeviceDiscovery { ...@@ -90,6 +103,11 @@ class AndroidDevices extends PollingDeviceDiscovery {
text, text,
diagnostics: diagnostics, diagnostics: diagnostics,
timeoutConfiguration: timeoutConfiguration, timeoutConfiguration: timeoutConfiguration,
processManager: _processManager,
logger: _logger,
fileSystem: _fileSystem,
androidSdk: _androidSdk,
platform: _platform,
); );
return diagnostics; return diagnostics;
} }
...@@ -106,11 +124,11 @@ class AndroidDevices extends PollingDeviceDiscovery { ...@@ -106,11 +124,11 @@ class AndroidDevices extends PollingDeviceDiscovery {
String text, { String text, {
List<AndroidDevice> devices, List<AndroidDevice> devices,
List<String> diagnostics, List<String> diagnostics,
AndroidSdk androidSdk, @required AndroidSdk androidSdk,
FileSystem fileSystem, @required FileSystem fileSystem,
Logger logger, @required Logger logger,
Platform platform, @required Platform platform,
ProcessManager processManager, @required ProcessManager processManager,
@required TimeoutConfiguration timeoutConfiguration, @required TimeoutConfiguration timeoutConfiguration,
}) { }) {
// Check for error messages from adb // Check for error messages from adb
...@@ -170,11 +188,11 @@ class AndroidDevices extends PollingDeviceDiscovery { ...@@ -170,11 +188,11 @@ class AndroidDevices extends PollingDeviceDiscovery {
productID: info['product'], productID: info['product'],
modelID: info['model'] ?? deviceID, modelID: info['model'] ?? deviceID,
deviceCodeName: info['device'], deviceCodeName: info['device'],
androidSdk: androidSdk ?? globals.androidSdk, androidSdk: androidSdk,
fileSystem: fileSystem ?? globals.fs, fileSystem: fileSystem,
logger: logger ?? globals.logger, logger: logger,
platform: platform ?? globals.platform, platform: platform,
processManager: processManager ?? globals.processManager, processManager: processManager,
timeoutConfiguration: timeoutConfiguration, timeoutConfiguration: timeoutConfiguration,
)); ));
} }
......
...@@ -31,16 +31,15 @@ import 'iproxy.dart'; ...@@ -31,16 +31,15 @@ import 'iproxy.dart';
import 'mac.dart'; import 'mac.dart';
class IOSDevices extends PollingDeviceDiscovery { class IOSDevices extends PollingDeviceDiscovery {
// TODO(fujino): make these required and remove fallbacks once internal invocations migrated
IOSDevices({ IOSDevices({
Platform platform, @required Platform platform,
XCDevice xcdevice, @required XCDevice xcdevice,
IOSWorkflow iosWorkflow, @required IOSWorkflow iosWorkflow,
Logger logger, @required Logger logger,
}) : _platform = platform ?? globals.platform, }) : _platform = platform,
_xcdevice = xcdevice ?? globals.xcdevice, _xcdevice = xcdevice,
_iosWorkflow = iosWorkflow ?? globals.iosWorkflow, _iosWorkflow = iosWorkflow,
_logger = logger ?? globals.logger, _logger = logger,
super('iOS devices'); super('iOS devices');
final Platform _platform; final Platform _platform;
......
...@@ -17,7 +17,6 @@ import '../build_info.dart'; ...@@ -17,7 +17,6 @@ import '../build_info.dart';
import '../bundle.dart'; import '../bundle.dart';
import '../convert.dart'; import '../convert.dart';
import '../device.dart'; import '../device.dart';
import '../globals.dart' as globals;
import '../project.dart'; import '../project.dart';
import '../protocol_discovery.dart'; import '../protocol_discovery.dart';
import '../version.dart'; import '../version.dart';
...@@ -48,18 +47,18 @@ class FlutterTesterApp extends ApplicationPackage { ...@@ -48,18 +47,18 @@ class FlutterTesterApp extends ApplicationPackage {
// TODO(scheglov): This device does not currently work with full restarts. // TODO(scheglov): This device does not currently work with full restarts.
class FlutterTesterDevice extends Device { class FlutterTesterDevice extends Device {
FlutterTesterDevice(String deviceId, { FlutterTesterDevice(String deviceId, {
ProcessManager processManager, @required ProcessManager processManager,
FlutterVersion flutterVersion, @required FlutterVersion flutterVersion,
Logger logger, @required Logger logger,
String buildDirectory, @required String buildDirectory,
FileSystem fileSystem, @required FileSystem fileSystem,
Artifacts artifacts, @required Artifacts artifacts,
}) : _processManager = processManager ?? globals.processManager, // TODO(jonahwilliams): remove after google3 roll. }) : _processManager = processManager,
_flutterVersion = flutterVersion ?? globals.flutterVersion, _flutterVersion = flutterVersion,
_logger = logger ?? globals.logger, _logger = logger,
_buildDirectory = buildDirectory ?? getBuildDirectory(), _buildDirectory = buildDirectory,
_fileSystem = fileSystem ?? globals.fs, _fileSystem = fileSystem,
_artifacts = artifacts ?? globals.artifacts, _artifacts = artifacts,
super( super(
deviceId, deviceId,
platformType: null, platformType: null,
...@@ -255,20 +254,20 @@ class FlutterTesterDevice extends Device { ...@@ -255,20 +254,20 @@ class FlutterTesterDevice extends Device {
class FlutterTesterDevices extends PollingDeviceDiscovery { class FlutterTesterDevices extends PollingDeviceDiscovery {
FlutterTesterDevices({ FlutterTesterDevices({
FileSystem fileSystem, @required FileSystem fileSystem,
Artifacts artifacts, @required Artifacts artifacts,
ProcessManager processManager, @required ProcessManager processManager,
Logger logger, @required Logger logger,
FlutterVersion flutterVersion, @required FlutterVersion flutterVersion,
Config config, @required Config config,
}) : _testerDevice = FlutterTesterDevice( // TODO(jonahwilliams): remove after google3 roll. }) : _testerDevice = FlutterTesterDevice(
kTesterDeviceId, kTesterDeviceId,
fileSystem: fileSystem ?? globals.fs, fileSystem: fileSystem,
artifacts: artifacts ?? globals.artifacts, artifacts: artifacts,
processManager: processManager ?? globals.processManager, processManager: processManager,
buildDirectory: getBuildDirectory(config ?? globals.config, fileSystem ?? globals.fs), buildDirectory: getBuildDirectory(config, fileSystem),
logger: logger ?? globals.logger, logger: logger,
flutterVersion: flutterVersion ?? globals.flutterVersion, flutterVersion: flutterVersion,
), ),
super('Flutter tester'); super('Flutter tester');
......
...@@ -26,6 +26,8 @@ void main() { ...@@ -26,6 +26,8 @@ void main() {
featureFlags: TestFeatureFlags(), featureFlags: TestFeatureFlags(),
), ),
processManager: FakeProcessManager.list(<FakeCommand>[]), processManager: FakeProcessManager.list(<FakeCommand>[]),
fileSystem: MemoryFileSystem.test(),
platform: FakePlatform(),
); );
expect(await androidDevices.pollingGetDevices(), isEmpty); expect(await androidDevices.pollingGetDevices(), isEmpty);
...@@ -48,6 +50,8 @@ void main() { ...@@ -48,6 +50,8 @@ void main() {
featureFlags: TestFeatureFlags(), featureFlags: TestFeatureFlags(),
), ),
processManager: processManager, processManager: processManager,
fileSystem: MemoryFileSystem.test(),
platform: FakePlatform(),
); );
expect(androidDevices.pollingGetDevices(), expect(androidDevices.pollingGetDevices(),
...@@ -69,6 +73,8 @@ void main() { ...@@ -69,6 +73,8 @@ void main() {
featureFlags: TestFeatureFlags(), featureFlags: TestFeatureFlags(),
), ),
processManager: processManager, processManager: processManager,
fileSystem: MemoryFileSystem.test(),
platform: FakePlatform(),
); );
expect(androidDevices.pollingGetDevices(), expect(androidDevices.pollingGetDevices(),
...@@ -86,6 +92,8 @@ void main() { ...@@ -86,6 +92,8 @@ void main() {
), ),
), ),
processManager: FakeProcessManager.any(), processManager: FakeProcessManager.any(),
fileSystem: MemoryFileSystem.test(),
platform: FakePlatform(),
); );
expect(androidDevices.supportsPlatform, false); expect(androidDevices.supportsPlatform, false);
...@@ -163,6 +171,11 @@ Use the 'android' tool to install them: ...@@ -163,6 +171,11 @@ Use the 'android' tool to install them:
''', devices: devices, ''', devices: devices,
diagnostics: diagnostics, diagnostics: diagnostics,
timeoutConfiguration: const TimeoutConfiguration(), timeoutConfiguration: const TimeoutConfiguration(),
processManager: FakeProcessManager.any(),
platform: FakePlatform(),
logger: BufferLogger.test(),
fileSystem: MemoryFileSystem.test(),
androidSdk: MockAndroidSdk(),
); );
expect(devices, isEmpty); expect(devices, isEmpty);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment