Skip to content

Commit a56c5e5

Browse files
authored
Migrate some test files to null safety (#104469)
1 parent b3e98a9 commit a56c5e5

16 files changed

+102
-121
lines changed

packages/flutter_tools/test/general.shard/android/android_device_discovery_test.dart

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:flutter_tools/src/android/android_device_discovery.dart';
97
import 'package:flutter_tools/src/android/android_sdk.dart';
@@ -15,11 +13,11 @@ import 'package:flutter_tools/src/device.dart';
1513
import 'package:test/fake.dart';
1614

1715
import '../../src/common.dart';
18-
import '../../src/context.dart';
16+
import '../../src/fake_process_manager.dart';
1917
import '../../src/fakes.dart';
2018

2119
void main() {
22-
AndroidWorkflow androidWorkflow;
20+
late AndroidWorkflow androidWorkflow;
2321

2422
setUp(() {
2523
androidWorkflow = AndroidWorkflow(
@@ -243,5 +241,5 @@ class FakeAndroidSdk extends Fake implements AndroidSdk {
243241
FakeAndroidSdk([this.adbPath = 'adb']);
244242

245243
@override
246-
final String adbPath;
244+
final String? adbPath;
247245
}

packages/flutter_tools/test/general.shard/android/android_workflow_test.dart

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:flutter_tools/src/android/android_sdk.dart';
97
import 'package:flutter_tools/src/android/android_studio.dart';
@@ -18,15 +16,15 @@ import 'package:flutter_tools/src/doctor_validator.dart';
1816
import 'package:test/fake.dart';
1917

2018
import '../../src/common.dart';
21-
import '../../src/context.dart';
19+
import '../../src/fake_process_manager.dart';
2220
import '../../src/fakes.dart';
2321

2422
void main() {
25-
FakeAndroidSdk sdk;
26-
Logger logger;
27-
MemoryFileSystem fileSystem;
28-
FakeProcessManager processManager;
29-
FakeStdio stdio;
23+
late FakeAndroidSdk sdk;
24+
late Logger logger;
25+
late MemoryFileSystem fileSystem;
26+
late FakeProcessManager processManager;
27+
late FakeStdio stdio;
3028

3129
setUp(() {
3230
sdk = FakeAndroidSdk();
@@ -532,31 +530,31 @@ Review licenses that have not been accepted (y/N)?
532530

533531
class FakeAndroidSdk extends Fake implements AndroidSdk {
534532
@override
535-
String sdkManagerPath;
533+
String? sdkManagerPath;
536534

537535
@override
538-
String sdkManagerVersion;
536+
String? sdkManagerVersion;
539537

540538
@override
541-
String adbPath;
539+
String? adbPath;
542540

543541
@override
544-
bool licensesAvailable;
542+
bool licensesAvailable = false;
545543

546544
@override
547-
bool platformToolsAvailable;
545+
bool platformToolsAvailable = false;
548546

549547
@override
550-
bool cmdlineToolsAvailable;
548+
bool cmdlineToolsAvailable = false;
551549

552550
@override
553-
Directory directory;
551+
Directory directory = MemoryFileSystem.test().directory('/foo/bar');
554552

555553
@override
556-
AndroidSdkVersion latestVersion;
554+
AndroidSdkVersion? latestVersion;
557555

558556
@override
559-
String emulatorPath;
557+
String? emulatorPath;
560558

561559
@override
562560
List<String> validateSdkWellFormed() => <String>[];
@@ -567,10 +565,10 @@ class FakeAndroidSdk extends Fake implements AndroidSdk {
567565

568566
class FakeAndroidSdkVersion extends Fake implements AndroidSdkVersion {
569567
@override
570-
int sdkLevel;
568+
int sdkLevel = 0;
571569

572570
@override
573-
Version buildToolsVersion;
571+
Version buildToolsVersion = Version(0, 0, 0);
574572

575573
@override
576574
String get buildToolsVersionName => '';

packages/flutter_tools/test/general.shard/build_system/targets/desktop_test.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:file_testing/file_testing.dart';
97
import 'package:flutter_tools/src/base/file_system.dart';

packages/flutter_tools/test/general.shard/flutter_validator_test.dart

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:flutter_tools/src/artifacts.dart';
97
import 'package:flutter_tools/src/base/os.dart';
@@ -20,9 +18,9 @@ import '../src/fakes.dart';
2018

2119
/// Matches a doctor validation result.
2220
Matcher _matchDoctorValidation({
23-
ValidationType validationType,
24-
String statusInfo,
25-
dynamic messages
21+
required ValidationType validationType,
22+
required String statusInfo,
23+
required Object messages
2624
}) {
2725
return const TypeMatcher<ValidationResult>()
2826
.having((ValidationResult result) => result.type, 'type', validationType)
@@ -235,7 +233,7 @@ void main() {
235233
}
236234

237235
class FakeOperatingSystemUtils extends Fake implements OperatingSystemUtils {
238-
FakeOperatingSystemUtils({this.name});
236+
FakeOperatingSystemUtils({required this.name});
239237

240238
@override
241239
final String name;

packages/flutter_tools/test/general.shard/ios/ios_device_install_test.dart

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:flutter_tools/src/artifacts.dart';
97
import 'package:flutter_tools/src/base/file_system.dart';
@@ -17,7 +15,6 @@ import 'package:flutter_tools/src/ios/devices.dart';
1715
import 'package:flutter_tools/src/ios/ios_deploy.dart';
1816
import 'package:flutter_tools/src/ios/iproxy.dart';
1917
import 'package:flutter_tools/src/ios/mac.dart';
20-
import 'package:meta/meta.dart';
2118

2219
import '../../src/common.dart';
2320
import '../../src/fake_process_manager.dart';
@@ -28,10 +25,10 @@ const Map<String, String> kDyLdLibEntry = <String, String>{
2825
};
2926

3027
void main() {
31-
Artifacts artifacts;
32-
String iosDeployPath;
33-
FileSystem fileSystem;
34-
Directory bundleDirectory;
28+
late Artifacts artifacts;
29+
late String iosDeployPath;
30+
late FileSystem fileSystem;
31+
late Directory bundleDirectory;
3532

3633
setUp(() {
3734
artifacts = Artifacts.test();
@@ -319,11 +316,11 @@ void main() {
319316
}
320317

321318
IOSDevice setUpIOSDevice({
322-
@required ProcessManager processManager,
323-
FileSystem fileSystem,
324-
Logger logger,
325-
IOSDeviceConnectionInterface interfaceType,
326-
Artifacts artifacts,
319+
required ProcessManager processManager,
320+
FileSystem? fileSystem,
321+
Logger? logger,
322+
IOSDeviceConnectionInterface? interfaceType,
323+
Artifacts? artifacts,
327324
}) {
328325
logger ??= BufferLogger.test();
329326
final FakePlatform platform = FakePlatform(
@@ -360,6 +357,6 @@ IOSDevice setUpIOSDevice({
360357
cache: cache,
361358
),
362359
iProxy: IProxy.test(logger: logger, processManager: processManager),
363-
interfaceType: interfaceType,
360+
interfaceType: interfaceType ?? IOSDeviceConnectionInterface.usb,
364361
);
365362
}

packages/flutter_tools/test/general.shard/ios/ios_device_logger_test.dart

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'dart:async';
86

97
import 'package:flutter_tools/src/artifacts.dart';
@@ -24,11 +22,11 @@ import '../../src/fake_process_manager.dart';
2422
import '../../src/fake_vm_services.dart';
2523

2624
void main() {
27-
FakeProcessManager processManager;
28-
Artifacts artifacts;
29-
Cache fakeCache;
30-
BufferLogger logger;
31-
String ideviceSyslogPath;
25+
late FakeProcessManager processManager;
26+
late Artifacts artifacts;
27+
late Cache fakeCache;
28+
late BufferLogger logger;
29+
late String ideviceSyslogPath;
3230

3331
setUp(() {
3432
processManager = FakeProcessManager.empty();
@@ -328,8 +326,8 @@ Runner(libsystem_asl.dylib)[297] <Notice>: libMobileGestalt
328326
),
329327
useSyslog: false,
330328
);
331-
Object exception;
332-
StackTrace trace;
329+
Object? exception;
330+
StackTrace? trace;
333331
await asyncGuard(
334332
() async {
335333
await logReader.linesController.close();

packages/flutter_tools/test/general.shard/ios/ios_device_start_prebuilt_test.dart

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'dart:async';
86
import 'dart:convert';
97

@@ -66,8 +64,8 @@ const FakeCommand kLaunchDebugCommand = FakeCommand(command: <String>[
6664

6765
// The command used to actually launch the app and attach the debugger with args in debug.
6866
FakeCommand attachDebuggerCommand({
69-
IOSink stdin,
70-
Completer<void>/*?*/ completer,
67+
IOSink? stdin,
68+
Completer<void>? completer,
7169
}) {
7270
return FakeCommand(
7371
command: const <String>[
@@ -359,10 +357,10 @@ void main() {
359357

360358
IOSDevice setUpIOSDevice({
361359
String sdkVersion = '13.0.1',
362-
FileSystem fileSystem,
363-
Logger logger,
364-
ProcessManager processManager,
365-
IOSDeploy iosDeploy,
360+
FileSystem? fileSystem,
361+
Logger? logger,
362+
ProcessManager? processManager,
363+
IOSDeploy? iosDeploy,
366364
}) {
367365
final Artifacts artifacts = Artifacts.test();
368366
final FakePlatform macPlatform = FakePlatform(
@@ -377,24 +375,24 @@ IOSDevice setUpIOSDevice({
377375
],
378376
processManager: FakeProcessManager.any(),
379377
);
380-
378+
logger ??= BufferLogger.test();
381379
return IOSDevice('123',
382380
name: 'iPhone 1',
383381
sdkVersion: sdkVersion,
384382
fileSystem: fileSystem ?? MemoryFileSystem.test(),
385383
platform: macPlatform,
386384
iProxy: IProxy.test(logger: logger, processManager: processManager ?? FakeProcessManager.any()),
387-
logger: logger ?? BufferLogger.test(),
385+
logger: logger,
388386
iosDeploy: iosDeploy ??
389387
IOSDeploy(
390-
logger: logger ?? BufferLogger.test(),
388+
logger: logger,
391389
platform: macPlatform,
392390
processManager: processManager ?? FakeProcessManager.any(),
393391
artifacts: artifacts,
394392
cache: cache,
395393
),
396394
iMobileDevice: IMobileDevice(
397-
logger: logger ?? BufferLogger.test(),
395+
logger: logger,
398396
processManager: processManager ?? FakeProcessManager.any(),
399397
artifacts: artifacts,
400398
cache: cache,

packages/flutter_tools/test/general.shard/linux/linux_device_test.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
86
import 'package:flutter_tools/src/base/file_system.dart';
97
import 'package:flutter_tools/src/base/logger.dart';

packages/flutter_tools/test/general.shard/macos/macos_ipad_device_test.dart

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,21 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
// @dart = 2.8
6-
75
import 'package:file/memory.dart';
6+
import 'package:flutter_tools/src/application_package.dart';
87
import 'package:flutter_tools/src/base/logger.dart';
98
import 'package:flutter_tools/src/base/os.dart';
109
import 'package:flutter_tools/src/base/platform.dart';
1110
import 'package:flutter_tools/src/build_info.dart';
1211
import 'package:flutter_tools/src/desktop_device.dart';
1312
import 'package:flutter_tools/src/device.dart';
13+
import 'package:flutter_tools/src/ios/application_package.dart';
1414
import 'package:flutter_tools/src/ios/ios_workflow.dart';
1515
import 'package:flutter_tools/src/macos/macos_ipad_device.dart';
16-
import 'package:meta/meta.dart';
1716
import 'package:test/fake.dart';
1817

1918
import '../../src/common.dart';
20-
import '../../src/context.dart';
19+
import '../../src/fake_process_manager.dart';
2120
import '../../src/fakes.dart';
2221

2322
void main() {
@@ -125,25 +124,34 @@ void main() {
125124
expect(device.portForwarder, isNot(isNull));
126125
expect(await device.targetPlatform, TargetPlatform.darwin);
127126

128-
expect(await device.installApp(null), isTrue);
129-
expect(await device.isAppInstalled(null), isTrue);
130-
expect(await device.isLatestBuildInstalled(null), isTrue);
131-
expect(await device.uninstallApp(null), isTrue);
127+
expect(await device.installApp(FakeApplicationPackage()), isTrue);
128+
expect(await device.isAppInstalled(FakeApplicationPackage()), isTrue);
129+
expect(await device.isLatestBuildInstalled(FakeApplicationPackage()), isTrue);
130+
expect(await device.uninstallApp(FakeApplicationPackage()), isTrue);
132131

133132
expect(device.isSupported(), isTrue);
134133
expect(device.getLogReader(), isA<DesktopLogReader>());
135134

136-
expect(await device.stopApp(null), isFalse);
135+
expect(await device.stopApp(FakeIOSApp()), isFalse);
137136

138-
await expectLater(() => device.startApp(null, debuggingOptions: null), throwsA(isA<UnimplementedError>()));
139-
await expectLater(() => device.buildForDevice(null, buildInfo: BuildInfo.debug), throwsA(isA<UnimplementedError>()));
140-
expect(device.executablePathForDevice(null, null), null);
137+
await expectLater(
138+
() => device.startApp(
139+
FakeIOSApp(),
140+
debuggingOptions: DebuggingOptions.disabled(BuildInfo.debug),
141+
),
142+
throwsA(isA<UnimplementedError>()),
143+
);
144+
await expectLater(() => device.buildForDevice(FakeIOSApp(), buildInfo: BuildInfo.debug), throwsA(isA<UnimplementedError>()));
145+
expect(device.executablePathForDevice(FakeIOSApp(), BuildMode.debug), null);
141146
});
142147
}
143148

144149
class FakeIOSWorkflow extends Fake implements IOSWorkflow {
145-
FakeIOSWorkflow({@required this.canListDevices});
150+
FakeIOSWorkflow({required this.canListDevices});
146151

147152
@override
148153
final bool canListDevices;
149154
}
155+
156+
class FakeApplicationPackage extends Fake implements ApplicationPackage {}
157+
class FakeIOSApp extends Fake implements IOSApp {}

0 commit comments

Comments
 (0)