Replace MockArtifacts with Artifacts.test() (#67012)
This commit is contained in:
parent
b92bb62d4d
commit
36fca52c0d
@ -424,14 +424,14 @@ void main() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
group('doctor with fake validators', () {
|
group('doctor with fake validators', () {
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
const String genSnapshotPath = '/path/to/gen_snapshot';
|
String genSnapshotPath;
|
||||||
FileSystem memoryFileSystem;
|
FileSystem memoryFileSystem;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
memoryFileSystem = MemoryFileSystem.test();
|
memoryFileSystem = MemoryFileSystem.test();
|
||||||
mockArtifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
when(mockArtifacts.getArtifactPath(Artifact.genSnapshot)).thenReturn(genSnapshotPath);
|
genSnapshotPath = artifacts.getArtifactPath(Artifact.genSnapshot);
|
||||||
});
|
});
|
||||||
|
|
||||||
testUsingContext('validate non-verbose output format for run without issues', () async {
|
testUsingContext('validate non-verbose output format for run without issues', () async {
|
||||||
@ -594,7 +594,7 @@ void main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
OutputPreferences: () => OutputPreferences(wrapText: false),
|
OutputPreferences: () => OutputPreferences(wrapText: false),
|
||||||
ProcessManager: () => mockProcessManager,
|
ProcessManager: () => mockProcessManager,
|
||||||
@ -607,7 +607,7 @@ void main() {
|
|||||||
// fail if the gen_snapshot binary is not present.
|
// fail if the gen_snapshot binary is not present.
|
||||||
expect(logger.statusText, contains('No issues found!'));
|
expect(logger.statusText, contains('No issues found!'));
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => MemoryFileSystem.test(),
|
FileSystem: () => MemoryFileSystem.test(),
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
});
|
});
|
||||||
@ -635,7 +635,7 @@ void main() {
|
|||||||
'! Doctor found issues in 1 category.\n'
|
'! Doctor found issues in 1 category.\n'
|
||||||
));
|
));
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
OutputPreferences: () => OutputPreferences(wrapText: false),
|
OutputPreferences: () => OutputPreferences(wrapText: false),
|
||||||
ProcessManager: () => mockProcessManager,
|
ProcessManager: () => mockProcessManager,
|
||||||
@ -653,7 +653,7 @@ void main() {
|
|||||||
expect(logger.statusText, contains('Pub download mirror https://example.com/pub'));
|
expect(logger.statusText, contains('Pub download mirror https://example.com/pub'));
|
||||||
expect(logger.statusText, contains('Flutter download mirror https://example.com/flutter'));
|
expect(logger.statusText, contains('Flutter download mirror https://example.com/flutter'));
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
OutputPreferences: () => OutputPreferences(wrapText: false),
|
OutputPreferences: () => OutputPreferences(wrapText: false),
|
||||||
ProcessManager: () => mockProcessManager,
|
ProcessManager: () => mockProcessManager,
|
||||||
@ -1239,7 +1239,6 @@ class VsCodeValidatorTestTargets extends VsCodeValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MockProcessManager extends Mock implements ProcessManager {}
|
class MockProcessManager extends Mock implements ProcessManager {}
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
class MockPlistParser extends Mock implements PlistParser {}
|
class MockPlistParser extends Mock implements PlistParser {}
|
||||||
class MockDeviceManager extends Mock implements DeviceManager {}
|
class MockDeviceManager extends Mock implements DeviceManager {}
|
||||||
class MockDevice extends Mock implements Device {
|
class MockDevice extends Mock implements Device {
|
||||||
|
@ -140,14 +140,14 @@ void main() {
|
|||||||
|
|
||||||
group('run app', () {
|
group('run app', () {
|
||||||
MemoryFileSystem fs;
|
MemoryFileSystem fs;
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
MockCache mockCache;
|
MockCache mockCache;
|
||||||
MockProcessManager mockProcessManager;
|
MockProcessManager mockProcessManager;
|
||||||
MockUsage mockUsage;
|
MockUsage mockUsage;
|
||||||
Directory tempDir;
|
Directory tempDir;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
mockArtifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
mockCache = MockCache();
|
mockCache = MockCache();
|
||||||
mockUsage = MockUsage();
|
mockUsage = MockUsage();
|
||||||
fs = MemoryFileSystem.test();
|
fs = MemoryFileSystem.test();
|
||||||
@ -357,12 +357,6 @@ void main() {
|
|||||||
userIdentifier: anyNamed('userIdentifier'),
|
userIdentifier: anyNamed('userIdentifier'),
|
||||||
)).thenAnswer((Invocation invocation) => Future<LaunchResult>.value(LaunchResult.failed()));
|
)).thenAnswer((Invocation invocation) => Future<LaunchResult>.value(LaunchResult.failed()));
|
||||||
|
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.flutterPatchedSdkPath,
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
)).thenReturn('/path/to/sdk');
|
|
||||||
|
|
||||||
when(mockDeviceManager.getDevices()).thenAnswer(
|
when(mockDeviceManager.getDevices()).thenAnswer(
|
||||||
(Invocation invocation) => Future<List<Device>>.value(<Device>[mockDevice])
|
(Invocation invocation) => Future<List<Device>>.value(<Device>[mockDevice])
|
||||||
);
|
);
|
||||||
@ -409,7 +403,7 @@ void main() {
|
|||||||
expect(parameters.containsKey(cdKey(CustomDimensions.commandRunAndroidEmbeddingVersion)), false);
|
expect(parameters.containsKey(cdKey(CustomDimensions.commandRunAndroidEmbeddingVersion)), false);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
ApplicationPackageFactory: () => mockApplicationPackageFactory,
|
ApplicationPackageFactory: () => mockApplicationPackageFactory,
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
Cache: () => mockCache,
|
Cache: () => mockCache,
|
||||||
DeviceManager: () => mockDeviceManager,
|
DeviceManager: () => mockDeviceManager,
|
||||||
FileSystem: () => fs,
|
FileSystem: () => fs,
|
||||||
@ -541,7 +535,6 @@ void main() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
class MockCache extends Mock implements Cache {}
|
class MockCache extends Mock implements Cache {}
|
||||||
class MockUsage extends Mock implements Usage {}
|
class MockUsage extends Mock implements Usage {}
|
||||||
|
|
||||||
|
@ -12,7 +12,6 @@ import 'package:flutter_tools/src/build_info.dart';
|
|||||||
import 'package:flutter_tools/src/ios/xcodeproj.dart';
|
import 'package:flutter_tools/src/ios/xcodeproj.dart';
|
||||||
import 'package:flutter_tools/src/macos/xcode.dart';
|
import 'package:flutter_tools/src/macos/xcode.dart';
|
||||||
import 'package:flutter_tools/src/reporting/reporting.dart';
|
import 'package:flutter_tools/src/reporting/reporting.dart';
|
||||||
import 'package:mockito/mockito.dart';
|
|
||||||
|
|
||||||
import '../../src/common.dart';
|
import '../../src/common.dart';
|
||||||
import '../../src/context.dart';
|
import '../../src/context.dart';
|
||||||
@ -82,30 +81,30 @@ void main() {
|
|||||||
|
|
||||||
group('GenSnapshot', () {
|
group('GenSnapshot', () {
|
||||||
GenSnapshot genSnapshot;
|
GenSnapshot genSnapshot;
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
FakeProcessManager processManager;
|
FakeProcessManager processManager;
|
||||||
BufferLogger logger;
|
BufferLogger logger;
|
||||||
|
|
||||||
setUp(() async {
|
setUp(() async {
|
||||||
mockArtifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
logger = BufferLogger.test();
|
logger = BufferLogger.test();
|
||||||
processManager = FakeProcessManager.list(< FakeCommand>[]);
|
processManager = FakeProcessManager.list(< FakeCommand>[]);
|
||||||
genSnapshot = GenSnapshot(
|
genSnapshot = GenSnapshot(
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: processManager,
|
processManager: processManager,
|
||||||
);
|
);
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
any,
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
)).thenReturn('gen_snapshot');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
testWithoutContext('android_x64', () async {
|
testWithoutContext('android_x64', () async {
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(
|
||||||
command: <String>['gen_snapshot', '--additional_arg']
|
FakeCommand(
|
||||||
));
|
command: <String>[
|
||||||
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_x64, mode: BuildMode.release),
|
||||||
|
'--additional_arg'
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
final int result = await genSnapshot.run(
|
final int result = await genSnapshot.run(
|
||||||
snapshotType: SnapshotType(TargetPlatform.android_x64, BuildMode.release),
|
snapshotType: SnapshotType(TargetPlatform.android_x64, BuildMode.release),
|
||||||
@ -116,9 +115,14 @@ void main() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
testWithoutContext('iOS armv7', () async {
|
testWithoutContext('iOS armv7', () async {
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(
|
||||||
command: <String>['gen_snapshot_armv7', '--additional_arg']
|
FakeCommand(
|
||||||
));
|
command: <String>[
|
||||||
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.release) + '_armv7',
|
||||||
|
'--additional_arg'
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
final int result = await genSnapshot.run(
|
final int result = await genSnapshot.run(
|
||||||
snapshotType: SnapshotType(TargetPlatform.ios, BuildMode.release),
|
snapshotType: SnapshotType(TargetPlatform.ios, BuildMode.release),
|
||||||
@ -129,9 +133,14 @@ void main() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
testWithoutContext('iOS arm64', () async {
|
testWithoutContext('iOS arm64', () async {
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(
|
||||||
command: <String>['gen_snapshot_arm64', '--additional_arg']
|
FakeCommand(
|
||||||
));
|
command: <String>[
|
||||||
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.release) + '_arm64',
|
||||||
|
'--additional_arg',
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
final int result = await genSnapshot.run(
|
final int result = await genSnapshot.run(
|
||||||
snapshotType: SnapshotType(TargetPlatform.ios, BuildMode.release),
|
snapshotType: SnapshotType(TargetPlatform.ios, BuildMode.release),
|
||||||
@ -143,7 +152,10 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('--strip filters error output from gen_snapshot', () async {
|
testWithoutContext('--strip filters error output from gen_snapshot', () async {
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: const <String>['gen_snapshot', '--strip'],
|
command: <String>[
|
||||||
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_x64, mode: BuildMode.release),
|
||||||
|
'--strip',
|
||||||
|
],
|
||||||
stderr: 'ABC\n${GenSnapshot.kIgnoredWarnings.join('\n')}\nXYZ\n'
|
stderr: 'ABC\n${GenSnapshot.kIgnoredWarnings.join('\n')}\nXYZ\n'
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -165,7 +177,7 @@ void main() {
|
|||||||
group('AOTSnapshotter', () {
|
group('AOTSnapshotter', () {
|
||||||
MemoryFileSystem fileSystem;
|
MemoryFileSystem fileSystem;
|
||||||
AOTSnapshotter snapshotter;
|
AOTSnapshotter snapshotter;
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
FakeProcessManager processManager;
|
FakeProcessManager processManager;
|
||||||
Logger logger;
|
Logger logger;
|
||||||
|
|
||||||
@ -173,7 +185,7 @@ void main() {
|
|||||||
final Platform platform = FakePlatform(operatingSystem: 'macos');
|
final Platform platform = FakePlatform(operatingSystem: 'macos');
|
||||||
logger = BufferLogger.test();
|
logger = BufferLogger.test();
|
||||||
fileSystem = MemoryFileSystem.test();
|
fileSystem = MemoryFileSystem.test();
|
||||||
mockArtifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
processManager = FakeProcessManager.list(<FakeCommand>[]);
|
processManager = FakeProcessManager.list(<FakeCommand>[]);
|
||||||
snapshotter = AOTSnapshotter(
|
snapshotter = AOTSnapshotter(
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
@ -192,14 +204,9 @@ void main() {
|
|||||||
usage: Usage.test(),
|
usage: Usage.test(),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
processManager: processManager,
|
processManager: processManager,
|
||||||
);
|
);
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.genSnapshot,
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
mode: anyNamed('mode')),
|
|
||||||
).thenReturn('gen_snapshot');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
testWithoutContext('does not build iOS with debug build mode', () async {
|
testWithoutContext('does not build iOS with debug build mode', () async {
|
||||||
@ -253,7 +260,7 @@ void main() {
|
|||||||
final String assembly = fileSystem.path.join(outputPath, 'snapshot_assembly.S');
|
final String assembly = fileSystem.path.join(outputPath, 'snapshot_assembly.S');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot_armv7',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.profile) +'_armv7',
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-assembly',
|
'--snapshot_kind=app-aot-assembly',
|
||||||
'--assembly=$assembly',
|
'--assembly=$assembly',
|
||||||
@ -313,7 +320,7 @@ void main() {
|
|||||||
final String debugPath = fileSystem.path.join('foo', 'app.ios-armv7.symbols');
|
final String debugPath = fileSystem.path.join('foo', 'app.ios-armv7.symbols');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot_armv7',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.profile) +'_armv7',
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-assembly',
|
'--snapshot_kind=app-aot-assembly',
|
||||||
'--assembly=$assembly',
|
'--assembly=$assembly',
|
||||||
@ -373,7 +380,7 @@ void main() {
|
|||||||
final String assembly = fileSystem.path.join(outputPath, 'snapshot_assembly.S');
|
final String assembly = fileSystem.path.join(outputPath, 'snapshot_assembly.S');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot_armv7',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.profile) +'_armv7',
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-assembly',
|
'--snapshot_kind=app-aot-assembly',
|
||||||
'--assembly=$assembly',
|
'--assembly=$assembly',
|
||||||
@ -432,7 +439,7 @@ void main() {
|
|||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot_armv7',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.release) +'_armv7',
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-assembly',
|
'--snapshot_kind=app-aot-assembly',
|
||||||
'--assembly=${fileSystem.path.join(outputPath, 'snapshot_assembly.S')}',
|
'--assembly=${fileSystem.path.join(outputPath, 'snapshot_assembly.S')}',
|
||||||
@ -489,7 +496,7 @@ void main() {
|
|||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot_arm64',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.ios, mode: BuildMode.release) +'_arm64',
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-assembly',
|
'--snapshot_kind=app-aot-assembly',
|
||||||
'--assembly=${fileSystem.path.join(outputPath, 'snapshot_assembly.S')}',
|
'--assembly=${fileSystem.path.join(outputPath, 'snapshot_assembly.S')}',
|
||||||
@ -542,9 +549,9 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('builds shared library for android-arm (32bit)', () async {
|
testWithoutContext('builds shared library for android-arm (32bit)', () async {
|
||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_arm, mode: BuildMode.release),
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-elf',
|
'--snapshot_kind=app-aot-elf',
|
||||||
'--elf=build/foo/app.so',
|
'--elf=build/foo/app.so',
|
||||||
@ -577,7 +584,7 @@ void main() {
|
|||||||
final String debugPath = fileSystem.path.join('foo', 'app.android-arm.symbols');
|
final String debugPath = fileSystem.path.join('foo', 'app.android-arm.symbols');
|
||||||
processManager.addCommand(FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_arm, mode: BuildMode.release),
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-elf',
|
'--snapshot_kind=app-aot-elf',
|
||||||
'--elf=build/foo/app.so',
|
'--elf=build/foo/app.so',
|
||||||
@ -609,9 +616,9 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('builds shared library for android-arm with obfuscate', () async {
|
testWithoutContext('builds shared library for android-arm with obfuscate', () async {
|
||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_arm, mode: BuildMode.release),
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-elf',
|
'--snapshot_kind=app-aot-elf',
|
||||||
'--elf=build/foo/app.so',
|
'--elf=build/foo/app.so',
|
||||||
@ -642,9 +649,9 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('builds shared library for android-arm without dwarf stack traces due to empty string', () async {
|
testWithoutContext('builds shared library for android-arm without dwarf stack traces due to empty string', () async {
|
||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_arm, mode: BuildMode.release),
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-elf',
|
'--snapshot_kind=app-aot-elf',
|
||||||
'--elf=build/foo/app.so',
|
'--elf=build/foo/app.so',
|
||||||
@ -674,9 +681,9 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('builds shared library for android-arm64', () async {
|
testWithoutContext('builds shared library for android-arm64', () async {
|
||||||
final String outputPath = fileSystem.path.join('build', 'foo');
|
final String outputPath = fileSystem.path.join('build', 'foo');
|
||||||
processManager.addCommand(const FakeCommand(
|
processManager.addCommand(FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'gen_snapshot',
|
artifacts.getArtifactPath(Artifact.genSnapshot, platform: TargetPlatform.android_arm64, mode: BuildMode.release),
|
||||||
'--deterministic',
|
'--deterministic',
|
||||||
'--snapshot_kind=app-aot-elf',
|
'--snapshot_kind=app-aot-elf',
|
||||||
'--elf=build/foo/app.so',
|
'--elf=build/foo/app.so',
|
||||||
@ -703,5 +710,3 @@ void main() {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -12,7 +12,6 @@ import 'package:flutter_tools/src/base/utils.dart';
|
|||||||
import 'package:flutter_tools/src/build_system/build_system.dart';
|
import 'package:flutter_tools/src/build_system/build_system.dart';
|
||||||
import 'package:flutter_tools/src/build_system/exceptions.dart';
|
import 'package:flutter_tools/src/build_system/exceptions.dart';
|
||||||
import 'package:flutter_tools/src/convert.dart';
|
import 'package:flutter_tools/src/convert.dart';
|
||||||
import 'package:mockito/mockito.dart';
|
|
||||||
|
|
||||||
import '../../src/common.dart';
|
import '../../src/common.dart';
|
||||||
import '../../src/context.dart';
|
import '../../src/context.dart';
|
||||||
@ -84,8 +83,7 @@ void main() {
|
|||||||
..inputs = const <Source>[
|
..inputs = const <Source>[
|
||||||
Source.pattern('{PROJECT_DIR}/foo.dart'),
|
Source.pattern('{PROJECT_DIR}/foo.dart'),
|
||||||
];
|
];
|
||||||
final MockArtifacts artifacts = MockArtifacts();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
when(artifacts.isLocalEngine).thenReturn(false);
|
|
||||||
environment = Environment.test(
|
environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: artifacts,
|
artifacts: artifacts,
|
||||||
@ -386,7 +384,7 @@ void main() {
|
|||||||
final Environment environmentA = Environment.test(
|
final Environment environmentA = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
outputDir: fileSystem.directory('a'),
|
outputDir: fileSystem.directory('a'),
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -394,7 +392,7 @@ void main() {
|
|||||||
final Environment environmentB = Environment.test(
|
final Environment environmentB = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
outputDir: fileSystem.directory('b'),
|
outputDir: fileSystem.directory('b'),
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -406,7 +404,7 @@ void main() {
|
|||||||
testWithoutContext('Additional inputs do not change the build configuration', () async {
|
testWithoutContext('Additional inputs do not change the build configuration', () async {
|
||||||
final Environment environmentA = Environment.test(
|
final Environment environmentA = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -416,7 +414,7 @@ void main() {
|
|||||||
);
|
);
|
||||||
final Environment environmentB = Environment.test(
|
final Environment environmentB = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -479,7 +477,7 @@ void main() {
|
|||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
outputDir: fileSystem.directory('a/b/c/d'),
|
outputDir: fileSystem.directory('a/b/c/d'),
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -561,7 +559,7 @@ void main() {
|
|||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
'config': 'debug',
|
'config': 'debug',
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
@ -572,7 +570,7 @@ void main() {
|
|||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
'config': 'profile',
|
'config': 'profile',
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
@ -688,5 +686,3 @@ class TestTarget extends Target {
|
|||||||
@override
|
@override
|
||||||
List<Source> outputs = <Source>[];
|
List<Source> outputs = <Source>[];
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -7,7 +7,6 @@ import 'dart:typed_data';
|
|||||||
import 'package:crypto/crypto.dart';
|
import 'package:crypto/crypto.dart';
|
||||||
import 'package:file/memory.dart';
|
import 'package:file/memory.dart';
|
||||||
import 'package:file_testing/file_testing.dart';
|
import 'package:file_testing/file_testing.dart';
|
||||||
import 'package:flutter_tools/src/artifacts.dart';
|
|
||||||
import 'package:flutter_tools/src/base/file_system.dart';
|
import 'package:flutter_tools/src/base/file_system.dart';
|
||||||
import 'package:flutter_tools/src/base/logger.dart';
|
import 'package:flutter_tools/src/base/logger.dart';
|
||||||
import 'package:flutter_tools/src/build_system/file_store.dart';
|
import 'package:flutter_tools/src/build_system/file_store.dart';
|
||||||
@ -202,4 +201,3 @@ void main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MockFile extends Mock implements File {}
|
class MockFile extends Mock implements File {}
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -14,7 +14,6 @@ import 'package:flutter_tools/src/build_system/depfile.dart';
|
|||||||
import 'package:flutter_tools/src/build_system/targets/assets.dart';
|
import 'package:flutter_tools/src/build_system/targets/assets.dart';
|
||||||
import 'package:flutter_tools/src/convert.dart';
|
import 'package:flutter_tools/src/convert.dart';
|
||||||
import 'package:flutter_tools/src/devfs.dart';
|
import 'package:flutter_tools/src/devfs.dart';
|
||||||
import 'package:mockito/mockito.dart';
|
|
||||||
|
|
||||||
import '../../../src/common.dart';
|
import '../../../src/common.dart';
|
||||||
import '../../../src/context.dart';
|
import '../../../src/context.dart';
|
||||||
@ -30,7 +29,7 @@ void main() {
|
|||||||
environment = Environment.test(
|
environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
);
|
);
|
||||||
@ -248,5 +247,3 @@ flutter:
|
|||||||
expect(logger.errorText, isEmpty);
|
expect(logger.errorText, isEmpty);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -25,44 +25,39 @@ import '../../../src/mocks.dart' as mocks;
|
|||||||
final Platform kNoAnsiPlatform = FakePlatform(stdoutSupportsAnsi: false);
|
final Platform kNoAnsiPlatform = FakePlatform(stdoutSupportsAnsi: false);
|
||||||
const List<int> _kTtfHeaderBytes = <int>[0, 1, 0, 0, 0, 15, 0, 128, 0, 3, 0, 112];
|
const List<int> _kTtfHeaderBytes = <int>[0, 1, 0, 0, 0, 15, 0, 128, 0, 3, 0, 112];
|
||||||
|
|
||||||
const String dartPath = '/flutter/dart';
|
|
||||||
const String constFinderPath = '/flutter/const_finder.snapshot.dart';
|
|
||||||
const String fontSubsetPath = '/flutter/font-subset';
|
|
||||||
|
|
||||||
const String inputPath = '/input/fonts/MaterialIcons-Regular.otf';
|
const String inputPath = '/input/fonts/MaterialIcons-Regular.otf';
|
||||||
const String outputPath = '/output/fonts/MaterialIcons-Regular.otf';
|
const String outputPath = '/output/fonts/MaterialIcons-Regular.otf';
|
||||||
const String relativePath = 'fonts/MaterialIcons-Regular.otf';
|
const String relativePath = 'fonts/MaterialIcons-Regular.otf';
|
||||||
|
|
||||||
List<String> getConstFinderArgs(String appDillPath) => <String>[
|
|
||||||
dartPath,
|
|
||||||
'--disable-dart-dev',
|
|
||||||
constFinderPath,
|
|
||||||
'--kernel-file', appDillPath,
|
|
||||||
'--class-library-uri', 'package:flutter/src/widgets/icon_data.dart',
|
|
||||||
'--class-name', 'IconData',
|
|
||||||
];
|
|
||||||
|
|
||||||
const List<String> fontSubsetArgs = <String>[
|
|
||||||
fontSubsetPath,
|
|
||||||
outputPath,
|
|
||||||
inputPath,
|
|
||||||
];
|
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
BufferLogger logger;
|
BufferLogger logger;
|
||||||
MemoryFileSystem fileSystem;
|
MemoryFileSystem fileSystem;
|
||||||
MockProcessManager mockProcessManager;
|
MockProcessManager mockProcessManager;
|
||||||
MockProcess fontSubsetProcess;
|
MockProcess fontSubsetProcess;
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
DevFSStringContent fontManifestContent;
|
DevFSStringContent fontManifestContent;
|
||||||
|
|
||||||
|
String dartPath;
|
||||||
|
String constFinderPath;
|
||||||
|
String fontSubsetPath;
|
||||||
|
List<String> fontSubsetArgs;
|
||||||
|
|
||||||
|
List<String> _getConstFinderArgs(String appDillPath) => <String>[
|
||||||
|
dartPath,
|
||||||
|
'--disable-dart-dev',
|
||||||
|
constFinderPath,
|
||||||
|
'--kernel-file', appDillPath,
|
||||||
|
'--class-library-uri', 'package:flutter/src/widgets/icon_data.dart',
|
||||||
|
'--class-name', 'IconData',
|
||||||
|
];
|
||||||
|
|
||||||
void _addConstFinderInvocation(
|
void _addConstFinderInvocation(
|
||||||
String appDillPath, {
|
String appDillPath, {
|
||||||
int exitCode = 0,
|
int exitCode = 0,
|
||||||
String stdout = '',
|
String stdout = '',
|
||||||
String stderr = '',
|
String stderr = '',
|
||||||
}) {
|
}) {
|
||||||
when(mockProcessManager.run(getConstFinderArgs(appDillPath))).thenAnswer((_) async {
|
when(mockProcessManager.run(_getConstFinderArgs(appDillPath))).thenAnswer((_) async {
|
||||||
return ProcessResult(0, exitCode, stdout, stderr);
|
return ProcessResult(0, exitCode, stdout, stderr);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -89,7 +84,7 @@ void main() {
|
|||||||
|
|
||||||
mockProcessManager = MockProcessManager();
|
mockProcessManager = MockProcessManager();
|
||||||
fontSubsetProcess = MockProcess();
|
fontSubsetProcess = MockProcess();
|
||||||
mockArtifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
fileSystem = MemoryFileSystem.test();
|
fileSystem = MemoryFileSystem.test();
|
||||||
logger = BufferLogger(
|
logger = BufferLogger(
|
||||||
terminal: AnsiTerminal(
|
terminal: AnsiTerminal(
|
||||||
@ -99,22 +94,29 @@ void main() {
|
|||||||
outputPreferences: OutputPreferences.test(showColor: false),
|
outputPreferences: OutputPreferences.test(showColor: false),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
dartPath = artifacts.getArtifactPath(Artifact.engineDartBinary);
|
||||||
|
constFinderPath = artifacts.getArtifactPath(Artifact.constFinder);
|
||||||
|
fontSubsetPath = artifacts.getArtifactPath(Artifact.fontSubset);
|
||||||
|
|
||||||
|
fontSubsetArgs = <String>[
|
||||||
|
fontSubsetPath,
|
||||||
|
outputPath,
|
||||||
|
inputPath,
|
||||||
|
];
|
||||||
|
|
||||||
fileSystem.file(constFinderPath).createSync(recursive: true);
|
fileSystem.file(constFinderPath).createSync(recursive: true);
|
||||||
fileSystem.file(dartPath).createSync(recursive: true);
|
fileSystem.file(dartPath).createSync(recursive: true);
|
||||||
fileSystem.file(fontSubsetPath).createSync(recursive: true);
|
fileSystem.file(fontSubsetPath).createSync(recursive: true);
|
||||||
fileSystem.file(inputPath)
|
fileSystem.file(inputPath)
|
||||||
..createSync(recursive: true)
|
..createSync(recursive: true)
|
||||||
..writeAsBytesSync(_kTtfHeaderBytes);
|
..writeAsBytesSync(_kTtfHeaderBytes);
|
||||||
when(mockArtifacts.getArtifactPath(Artifact.constFinder)).thenReturn(constFinderPath);
|
|
||||||
when(mockArtifacts.getArtifactPath(Artifact.fontSubset)).thenReturn(fontSubsetPath);
|
|
||||||
when(mockArtifacts.getArtifactPath(Artifact.engineDartBinary)).thenReturn(dartPath);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
Environment _createEnvironment(Map<String, String> defines) {
|
Environment _createEnvironment(Map<String, String> defines) {
|
||||||
return Environment.test(
|
return Environment.test(
|
||||||
fileSystem.directory('/icon_test')..createSync(recursive: true),
|
fileSystem.directory('/icon_test')..createSync(recursive: true),
|
||||||
defines: defines,
|
defines: defines,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -133,7 +135,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
@ -166,7 +168,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
@ -190,7 +192,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
@ -214,7 +216,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
@ -241,7 +243,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
||||||
@ -265,7 +267,7 @@ void main() {
|
|||||||
expect(subsetted, true);
|
expect(subsetted, true);
|
||||||
expect(stdinSink.writes, <List<int>>[utf8.encode('59470\n')]);
|
expect(stdinSink.writes, <List<int>>[utf8.encode('59470\n')]);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verify(mockProcessManager.start(fontSubsetArgs)).called(2);
|
verify(mockProcessManager.start(fontSubsetArgs)).called(2);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -283,7 +285,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
||||||
@ -300,7 +302,7 @@ void main() {
|
|||||||
);
|
);
|
||||||
expect(subsetted, false);
|
expect(subsetted, false);
|
||||||
|
|
||||||
verifyNever(mockProcessManager.run(getConstFinderArgs(appDill.path)));
|
verifyNever(mockProcessManager.run(_getConstFinderArgs(appDill.path)));
|
||||||
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -318,7 +320,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
||||||
@ -334,7 +336,7 @@ void main() {
|
|||||||
);
|
);
|
||||||
|
|
||||||
expect(subsetted, false);
|
expect(subsetted, false);
|
||||||
verifyNever(mockProcessManager.run(getConstFinderArgs(appDill.path)));
|
verifyNever(mockProcessManager.run(_getConstFinderArgs(appDill.path)));
|
||||||
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -352,7 +354,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
_addConstFinderInvocation(appDill.path, stdout: constFinderResultWithInvalid);
|
_addConstFinderInvocation(appDill.path, stdout: constFinderResultWithInvalid);
|
||||||
@ -370,7 +372,7 @@ void main() {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -389,7 +391,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink();
|
||||||
@ -405,7 +407,7 @@ void main() {
|
|||||||
throwsA(isA<IconTreeShakerException>()),
|
throwsA(isA<IconTreeShakerException>()),
|
||||||
);
|
);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verify(mockProcessManager.start(fontSubsetArgs)).called(1);
|
verify(mockProcessManager.start(fontSubsetArgs)).called(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -423,7 +425,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink(throwOnAdd: true);
|
final mocks.CompleterIOSink stdinSink = mocks.CompleterIOSink(throwOnAdd: true);
|
||||||
@ -439,7 +441,7 @@ void main() {
|
|||||||
throwsA(isA<IconTreeShakerException>()),
|
throwsA(isA<IconTreeShakerException>()),
|
||||||
);
|
);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verify(mockProcessManager.start(fontSubsetArgs)).called(1);
|
verify(mockProcessManager.start(fontSubsetArgs)).called(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -459,7 +461,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
_addConstFinderInvocation(appDill.path, stdout: validConstFinderResult);
|
_addConstFinderInvocation(appDill.path, stdout: validConstFinderResult);
|
||||||
@ -473,7 +475,7 @@ void main() {
|
|||||||
throwsA(isA<IconTreeShakerException>()),
|
throwsA(isA<IconTreeShakerException>()),
|
||||||
);
|
);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -493,7 +495,7 @@ void main() {
|
|||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
);
|
);
|
||||||
|
|
||||||
_addConstFinderInvocation(appDill.path, exitCode: -1);
|
_addConstFinderInvocation(appDill.path, exitCode: -1);
|
||||||
@ -507,7 +509,7 @@ void main() {
|
|||||||
throwsA(isA<IconTreeShakerException>()),
|
throwsA(isA<IconTreeShakerException>()),
|
||||||
);
|
);
|
||||||
|
|
||||||
verify(mockProcessManager.run(getConstFinderArgs(appDill.path))).called(1);
|
verify(mockProcessManager.run(_getConstFinderArgs(appDill.path))).called(1);
|
||||||
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
verifyNever(mockProcessManager.start(fontSubsetArgs));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -588,4 +590,3 @@ const String invalidFontManifestJson = '''
|
|||||||
|
|
||||||
class MockProcessManager extends Mock implements ProcessManager {}
|
class MockProcessManager extends Mock implements ProcessManager {}
|
||||||
class MockProcess extends Mock implements Process {}
|
class MockProcess extends Mock implements Process {}
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -13,7 +13,6 @@ import 'package:flutter_tools/src/build_system/targets/assets.dart';
|
|||||||
import 'package:flutter_tools/src/build_system/targets/common.dart';
|
import 'package:flutter_tools/src/build_system/targets/common.dart';
|
||||||
import 'package:flutter_tools/src/build_system/targets/linux.dart';
|
import 'package:flutter_tools/src/build_system/targets/linux.dart';
|
||||||
import 'package:flutter_tools/src/convert.dart';
|
import 'package:flutter_tools/src/convert.dart';
|
||||||
import 'package:mockito/mockito.dart';
|
|
||||||
|
|
||||||
import '../../../src/common.dart';
|
import '../../../src/common.dart';
|
||||||
import '../../../src/context.dart';
|
import '../../../src/context.dart';
|
||||||
@ -21,30 +20,15 @@ import '../../../src/context.dart';
|
|||||||
void main() {
|
void main() {
|
||||||
testWithoutContext('Copies files to correct cache directory, excluding unrelated code', () async {
|
testWithoutContext('Copies files to correct cache directory, excluding unrelated code', () async {
|
||||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||||
setUpCacheDirectory(fileSystem);
|
final Artifacts artifacts = Artifacts.test();
|
||||||
final MockArtifacts mockArtifacts = MockArtifacts();
|
setUpCacheDirectory(fileSystem, artifacts);
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.linuxDesktopPath,
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
)).thenReturn('linux-x64');
|
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.linuxHeaders,
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
)).thenReturn('linux-x64/flutter_linux');
|
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.icuData,
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
)).thenReturn(r'linux-x64/icudtl.dat');
|
|
||||||
|
|
||||||
final Environment testEnvironment = Environment.test(
|
final Environment testEnvironment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
kBuildMode: 'debug',
|
kBuildMode: 'debug',
|
||||||
},
|
},
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -54,8 +38,12 @@ void main() {
|
|||||||
await const UnpackLinux().build(testEnvironment);
|
await const UnpackLinux().build(testEnvironment);
|
||||||
|
|
||||||
expect(fileSystem.file('linux/flutter/ephemeral/libflutter_linux_gtk.so'), exists);
|
expect(fileSystem.file('linux/flutter/ephemeral/libflutter_linux_gtk.so'), exists);
|
||||||
expect(fileSystem.file('linux/flutter/ephemeral/flutter_linux/foo.h'), exists);
|
|
||||||
expect(fileSystem.file('linux/flutter/ephemeral/icudtl.dat'), exists);
|
final String headersPath = artifacts.getArtifactPath(Artifact.linuxHeaders, platform: TargetPlatform.linux_x64, mode: BuildMode.debug);
|
||||||
|
expect(fileSystem.file('linux/flutter/ephemeral/$headersPath/foo.h'), exists);
|
||||||
|
|
||||||
|
final String icuDataPath = artifacts.getArtifactPath(Artifact.icuData, platform: TargetPlatform.linux_x64);
|
||||||
|
expect(fileSystem.file('linux/flutter/ephemeral/$icuDataPath'), exists);
|
||||||
expect(fileSystem.file('linux/flutter/ephemeral/unrelated-stuff'), isNot(exists));
|
expect(fileSystem.file('linux/flutter/ephemeral/unrelated-stuff'), isNot(exists));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -74,7 +62,7 @@ void main() {
|
|||||||
inputs: <String, String>{
|
inputs: <String, String>{
|
||||||
kBundleSkSLPath: 'bundle.sksl',
|
kBundleSkSLPath: 'bundle.sksl',
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -118,7 +106,7 @@ void main() {
|
|||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
kBuildMode: 'profile',
|
kBuildMode: 'profile',
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -151,7 +139,7 @@ void main() {
|
|||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
kBuildMode: 'release',
|
kBuildMode: 'release',
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -179,12 +167,14 @@ void main() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void setUpCacheDirectory(FileSystem fileSystem) {
|
void setUpCacheDirectory(FileSystem fileSystem, Artifacts artifacts) {
|
||||||
fileSystem.file('linux-x64/unrelated-stuff').createSync(recursive: true);
|
final String desktopPath = artifacts.getArtifactPath(Artifact.linuxDesktopPath, platform: TargetPlatform.linux_x64, mode: BuildMode.debug);
|
||||||
fileSystem.file('linux-x64/libflutter_linux_gtk.so').createSync(recursive: true);
|
fileSystem.file('$desktopPath/unrelated-stuff').createSync(recursive: true);
|
||||||
fileSystem.file('linux-x64/flutter_linux/foo.h').createSync(recursive: true);
|
fileSystem.file('$desktopPath/libflutter_linux_gtk.so').createSync(recursive: true);
|
||||||
fileSystem.file('linux-x64/icudtl.dat').createSync();
|
|
||||||
|
final String headersPath = artifacts.getArtifactPath(Artifact.linuxHeaders, platform: TargetPlatform.linux_x64, mode: BuildMode.debug);
|
||||||
|
fileSystem.file('$headersPath/foo.h').createSync(recursive: true);
|
||||||
|
|
||||||
|
fileSystem.file(artifacts.getArtifactPath(Artifact.icuData, platform: TargetPlatform.linux_x64)).createSync();
|
||||||
fileSystem.file('packages/flutter_tools/lib/src/build_system/targets/linux.dart').createSync(recursive: true);
|
fileSystem.file('packages/flutter_tools/lib/src/build_system/targets/linux.dart').createSync(recursive: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -56,7 +56,7 @@ void main() {
|
|||||||
defines: <String, String>{
|
defines: <String, String>{
|
||||||
kTargetFile: globals.fs.path.join('foo', 'lib', 'main.dart'),
|
kTargetFile: globals.fs.path.join('foo', 'lib', 'main.dart'),
|
||||||
},
|
},
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
logger: globals.logger,
|
logger: globals.logger,
|
||||||
fileSystem: globals.fs,
|
fileSystem: globals.fs,
|
||||||
@ -557,4 +557,3 @@ void main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MockProcessManager extends Mock implements ProcessManager {}
|
class MockProcessManager extends Mock implements ProcessManager {}
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -15,7 +15,6 @@ import 'package:flutter_tools/src/build_system/targets/assets.dart';
|
|||||||
import 'package:flutter_tools/src/build_system/targets/common.dart';
|
import 'package:flutter_tools/src/build_system/targets/common.dart';
|
||||||
import 'package:flutter_tools/src/build_system/targets/windows.dart';
|
import 'package:flutter_tools/src/build_system/targets/windows.dart';
|
||||||
import 'package:flutter_tools/src/convert.dart';
|
import 'package:flutter_tools/src/convert.dart';
|
||||||
import 'package:mockito/mockito.dart';
|
|
||||||
|
|
||||||
import '../../../src/common.dart';
|
import '../../../src/common.dart';
|
||||||
import '../../../src/context.dart';
|
import '../../../src/context.dart';
|
||||||
@ -26,23 +25,9 @@ final Platform kWindowsPlatform = FakePlatform(
|
|||||||
environment: <String, String>{},
|
environment: <String, String>{},
|
||||||
);
|
);
|
||||||
|
|
||||||
const List<String> kRequiredFiles = <String>[
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_export.h',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_messenger.h',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.exp',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.lib',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.pdb',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_plugin_registrar.h',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.h',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\icudtl.dat',
|
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\cpp_client_wrapper\foo',
|
|
||||||
r'C:\packages\flutter_tools\lib\src\build_system\targets\windows.dart',
|
|
||||||
];
|
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
testWithoutContext('UnpackWindows copies files to the correct cache directory', () async {
|
testWithoutContext('UnpackWindows copies files to the correct cache directory', () async {
|
||||||
final MockArtifacts artifacts = MockArtifacts();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
final FileSystem fileSystem = MemoryFileSystem.test(style: FileSystemStyle.windows);
|
final FileSystem fileSystem = MemoryFileSystem.test(style: FileSystemStyle.windows);
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
@ -60,22 +45,24 @@ void main() {
|
|||||||
);
|
);
|
||||||
environment.buildDir.createSync(recursive: true);
|
environment.buildDir.createSync(recursive: true);
|
||||||
|
|
||||||
when(artifacts.getArtifactPath(
|
final String windowsDesktopPath = artifacts.getArtifactPath(Artifact.windowsDesktopPath, platform: TargetPlatform.windows_x64, mode: BuildMode.debug);
|
||||||
Artifact.windowsDesktopPath,
|
final String windowsCppClientWrapper = artifacts.getArtifactPath(Artifact.windowsCppClientWrapper, platform: TargetPlatform.windows_x64, mode: BuildMode.debug);
|
||||||
mode: anyNamed('mode'),
|
final String icuData = artifacts.getArtifactPath(Artifact.icuData, platform: TargetPlatform.windows_x64);
|
||||||
platform: anyNamed('platform')
|
final List<String> requiredFiles = <String>[
|
||||||
)).thenReturn(r'C:\bin\cache\artifacts\engine\windows-x64\');
|
'$windowsDesktopPath\\flutter_export.h',
|
||||||
when(artifacts.getArtifactPath(
|
'$windowsDesktopPath\\flutter_messenger.h',
|
||||||
Artifact.windowsCppClientWrapper,
|
'$windowsDesktopPath\\flutter_windows.dll',
|
||||||
mode: anyNamed('mode'),
|
'$windowsDesktopPath\\flutter_windows.dll.exp',
|
||||||
platform: anyNamed('platform')
|
'$windowsDesktopPath\\flutter_windows.dll.lib',
|
||||||
)).thenReturn(r'C:\bin\cache\artifacts\engine\windows-x64\cpp_client_wrapper\');
|
'$windowsDesktopPath\\flutter_windows.dll.pdb',
|
||||||
when(artifacts.getArtifactPath(
|
'$windowsDesktopPath\\flutter_plugin_registrar.h',
|
||||||
Artifact.icuData,
|
'$windowsDesktopPath\\flutter_windows.h',
|
||||||
mode: anyNamed('mode'),
|
icuData,
|
||||||
platform: anyNamed('platform')
|
'$windowsCppClientWrapper\\foo',
|
||||||
)).thenReturn(r'C:\bin\cache\artifacts\engine\windows-x64\icudtl.dat');
|
r'C:\packages\flutter_tools\lib\src\build_system\targets\windows.dart',
|
||||||
for (final String path in kRequiredFiles) {
|
];
|
||||||
|
|
||||||
|
for (final String path in requiredFiles) {
|
||||||
fileSystem.file(path).createSync(recursive: true);
|
fileSystem.file(path).createSync(recursive: true);
|
||||||
}
|
}
|
||||||
fileSystem.directory('windows').createSync();
|
fileSystem.directory('windows').createSync();
|
||||||
@ -93,9 +80,8 @@ void main() {
|
|||||||
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_messenger.h'), exists);
|
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_messenger.h'), exists);
|
||||||
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_plugin_registrar.h'), exists);
|
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_plugin_registrar.h'), exists);
|
||||||
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_windows.h'), exists);
|
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\flutter_windows.h'), exists);
|
||||||
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\icudtl.dat'), exists);
|
expect(fileSystem.file('C:\\windows\\flutter\\ephemeral\\$icuData'), exists);
|
||||||
expect(fileSystem.file(r'C:\windows\flutter\ephemeral\cpp_client_wrapper\foo'), exists);
|
expect(fileSystem.file('C:\\windows\\flutter\\ephemeral\\$windowsCppClientWrapper\\foo'), exists);
|
||||||
|
|
||||||
|
|
||||||
final File outputDepfile = environment.buildDir
|
final File outputDepfile = environment.buildDir
|
||||||
.childFile('windows_engine_sources.d');
|
.childFile('windows_engine_sources.d');
|
||||||
@ -110,16 +96,16 @@ void main() {
|
|||||||
|
|
||||||
// Depfile has expected sources.
|
// Depfile has expected sources.
|
||||||
expect(inputPaths, unorderedEquals(<String>[
|
expect(inputPaths, unorderedEquals(<String>[
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_export.h',
|
'$windowsDesktopPath\\flutter_export.h',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_messenger.h',
|
'$windowsDesktopPath\\flutter_messenger.h',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll',
|
'$windowsDesktopPath\\flutter_windows.dll',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.exp',
|
'$windowsDesktopPath\\flutter_windows.dll.exp',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.lib',
|
'$windowsDesktopPath\\flutter_windows.dll.lib',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.dll.pdb',
|
'$windowsDesktopPath\\flutter_windows.dll.pdb',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_plugin_registrar.h',
|
'$windowsDesktopPath\\flutter_plugin_registrar.h',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\flutter_windows.h',
|
'$windowsDesktopPath\\flutter_windows.h',
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\icudtl.dat',
|
icuData,
|
||||||
r'C:\bin\cache\artifacts\engine\windows-x64\cpp_client_wrapper\foo',
|
'$windowsCppClientWrapper\\foo',
|
||||||
]));
|
]));
|
||||||
expect(outputPaths, unorderedEquals(<String>[
|
expect(outputPaths, unorderedEquals(<String>[
|
||||||
r'C:\windows\flutter\ephemeral\flutter_export.h',
|
r'C:\windows\flutter\ephemeral\flutter_export.h',
|
||||||
@ -130,8 +116,8 @@ void main() {
|
|||||||
r'C:\windows\flutter\ephemeral\flutter_windows.dll.pdb',
|
r'C:\windows\flutter\ephemeral\flutter_windows.dll.pdb',
|
||||||
r'C:\windows\flutter\ephemeral\flutter_plugin_registrar.h',
|
r'C:\windows\flutter\ephemeral\flutter_plugin_registrar.h',
|
||||||
r'C:\windows\flutter\ephemeral\flutter_windows.h',
|
r'C:\windows\flutter\ephemeral\flutter_windows.h',
|
||||||
r'C:\windows\flutter\ephemeral\icudtl.dat',
|
'C:\\windows\\flutter\\ephemeral\\$icuData',
|
||||||
r'C:\windows\flutter\ephemeral\cpp_client_wrapper\foo',
|
'C:\\windows\\flutter\\ephemeral\\$windowsCppClientWrapper\\foo',
|
||||||
]));
|
]));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -145,7 +131,7 @@ void main() {
|
|||||||
testUsingContext('DebugBundleWindowsAssets creates correct bundle structure', () async {
|
testUsingContext('DebugBundleWindowsAssets creates correct bundle structure', () async {
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -186,7 +172,7 @@ void main() {
|
|||||||
testUsingContext('ProfileBundleWindowsAssets creates correct bundle structure', () async {
|
testUsingContext('ProfileBundleWindowsAssets creates correct bundle structure', () async {
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -213,7 +199,7 @@ void main() {
|
|||||||
testUsingContext('ReleaseBundleWindowsAssets creates correct bundle structure', () async {
|
testUsingContext('ReleaseBundleWindowsAssets creates correct bundle structure', () async {
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
artifacts: MockArtifacts(),
|
artifacts: Artifacts.test(),
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: BufferLogger.test(),
|
logger: BufferLogger.test(),
|
||||||
@ -237,5 +223,3 @@ void main() {
|
|||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
@ -33,12 +33,12 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
@ -74,12 +74,12 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
@ -115,12 +115,11 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: Artifacts.test(),
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
@ -153,12 +152,11 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: Artifacts.test(),
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
@ -191,12 +189,11 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: Artifacts.test(),
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
@ -232,12 +229,11 @@ void main() {
|
|||||||
|
|
||||||
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
final FakeProcessManager mockProcessManager = FakeProcessManager.any();
|
||||||
final BufferLogger mockBufferLogger = BufferLogger.test();
|
final BufferLogger mockBufferLogger = BufferLogger.test();
|
||||||
final Artifacts mockArtifacts = Artifacts.test();
|
|
||||||
final Environment environment = Environment.test(
|
final Environment environment = Environment.test(
|
||||||
fileSystem.currentDirectory,
|
fileSystem.currentDirectory,
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
logger: mockBufferLogger,
|
logger: mockBufferLogger,
|
||||||
artifacts: mockArtifacts,
|
artifacts: Artifacts.test(),
|
||||||
processManager: mockProcessManager,
|
processManager: mockProcessManager,
|
||||||
);
|
);
|
||||||
final BuildSystem buildSystem = MockBuildSystem();
|
final BuildSystem buildSystem = MockBuildSystem();
|
||||||
|
@ -872,12 +872,7 @@ void main() {
|
|||||||
FakeFuchsiaDeviceTools fuchsiaDeviceTools;
|
FakeFuchsiaDeviceTools fuchsiaDeviceTools;
|
||||||
MockFuchsiaSdk fuchsiaSdk;
|
MockFuchsiaSdk fuchsiaSdk;
|
||||||
MockFuchsiaArtifacts fuchsiaArtifacts;
|
MockFuchsiaArtifacts fuchsiaArtifacts;
|
||||||
MockArtifacts mockArtifacts;
|
Artifacts artifacts;
|
||||||
|
|
||||||
File compilerSnapshot;
|
|
||||||
File platformDill;
|
|
||||||
File patchedSdk;
|
|
||||||
File runner;
|
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
memoryFileSystem = MemoryFileSystem.test();
|
memoryFileSystem = MemoryFileSystem.test();
|
||||||
@ -886,32 +881,28 @@ void main() {
|
|||||||
fuchsiaSdk = MockFuchsiaSdk();
|
fuchsiaSdk = MockFuchsiaSdk();
|
||||||
fuchsiaArtifacts = MockFuchsiaArtifacts();
|
fuchsiaArtifacts = MockFuchsiaArtifacts();
|
||||||
|
|
||||||
compilerSnapshot = memoryFileSystem.file('kernel_compiler.snapshot')..createSync();
|
artifacts = Artifacts.test();
|
||||||
platformDill = memoryFileSystem.file('platform_strong.dill')..createSync();
|
for (final BuildMode mode in <BuildMode>[BuildMode.debug, BuildMode.release]) {
|
||||||
patchedSdk = memoryFileSystem.file('flutter_runner_patched_sdk')..createSync();
|
memoryFileSystem.file(
|
||||||
runner = memoryFileSystem.file('flutter_jit_runner')..createSync();
|
artifacts.getArtifactPath(Artifact.fuchsiaKernelCompiler,
|
||||||
|
platform: TargetPlatform.fuchsia_arm64, mode: mode),
|
||||||
|
).createSync();
|
||||||
|
|
||||||
mockArtifacts = MockArtifacts();
|
memoryFileSystem.file(
|
||||||
when(mockArtifacts.getArtifactPath(
|
artifacts.getArtifactPath(Artifact.platformKernelDill,
|
||||||
Artifact.fuchsiaKernelCompiler,
|
platform: TargetPlatform.fuchsia_arm64, mode: mode),
|
||||||
platform: anyNamed('platform'),
|
).createSync();
|
||||||
mode: anyNamed('mode'),
|
|
||||||
)).thenReturn(compilerSnapshot.path);
|
memoryFileSystem.file(
|
||||||
when(mockArtifacts.getArtifactPath(
|
artifacts.getArtifactPath(Artifact.flutterPatchedSdkPath,
|
||||||
Artifact.platformKernelDill,
|
platform: TargetPlatform.fuchsia_arm64, mode: mode),
|
||||||
platform: anyNamed('platform'),
|
).createSync();
|
||||||
mode: anyNamed('mode'),
|
|
||||||
)).thenReturn(platformDill.path);
|
memoryFileSystem.file(
|
||||||
when(mockArtifacts.getArtifactPath(
|
artifacts.getArtifactPath(Artifact.fuchsiaFlutterRunner,
|
||||||
Artifact.flutterPatchedSdkPath,
|
platform: TargetPlatform.fuchsia_arm64, mode: mode),
|
||||||
platform: anyNamed('platform'),
|
).createSync();
|
||||||
mode: anyNamed('mode'),
|
}
|
||||||
)).thenReturn(patchedSdk.path);
|
|
||||||
when(mockArtifacts.getArtifactPath(
|
|
||||||
Artifact.fuchsiaFlutterRunner,
|
|
||||||
platform: anyNamed('platform'),
|
|
||||||
mode: anyNamed('mode'),
|
|
||||||
)).thenReturn(runner.path);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
Future<LaunchResult> setupAndStartApp({
|
Future<LaunchResult> setupAndStartApp({
|
||||||
@ -951,7 +942,7 @@ void main() {
|
|||||||
expect(launchResult.started, isTrue);
|
expect(launchResult.started, isTrue);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -978,7 +969,7 @@ void main() {
|
|||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
expect(await device.stopApp(app), isTrue);
|
expect(await device.stopApp(app), isTrue);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -993,7 +984,7 @@ void main() {
|
|||||||
expect(launchResult.started, isTrue);
|
expect(launchResult.started, isTrue);
|
||||||
expect(launchResult.hasObservatory, isTrue);
|
expect(launchResult.hasObservatory, isTrue);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -1008,7 +999,7 @@ void main() {
|
|||||||
expect(launchResult.started, isTrue);
|
expect(launchResult.started, isTrue);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -1023,7 +1014,7 @@ void main() {
|
|||||||
expect(launchResult.started, isTrue);
|
expect(launchResult.started, isTrue);
|
||||||
expect(launchResult.hasObservatory, isTrue);
|
expect(launchResult.hasObservatory, isTrue);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -1038,7 +1029,7 @@ void main() {
|
|||||||
expect(launchResult.started, isFalse);
|
expect(launchResult.started, isFalse);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -1053,7 +1044,7 @@ void main() {
|
|||||||
expect(launchResult.started, isFalse);
|
expect(launchResult.started, isFalse);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
FuchsiaDeviceTools: () => fuchsiaDeviceTools,
|
||||||
@ -1068,7 +1059,7 @@ void main() {
|
|||||||
expect(launchResult.started, isFalse);
|
expect(launchResult.started, isFalse);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => FakeFuchsiaDeviceTools(amber: FailingAmberCtl()),
|
FuchsiaDeviceTools: () => FakeFuchsiaDeviceTools(amber: FailingAmberCtl()),
|
||||||
@ -1083,7 +1074,7 @@ void main() {
|
|||||||
expect(launchResult.started, isFalse);
|
expect(launchResult.started, isFalse);
|
||||||
expect(launchResult.hasObservatory, isFalse);
|
expect(launchResult.hasObservatory, isFalse);
|
||||||
}, overrides: <Type, Generator>{
|
}, overrides: <Type, Generator>{
|
||||||
Artifacts: () => mockArtifacts,
|
Artifacts: () => artifacts,
|
||||||
FileSystem: () => memoryFileSystem,
|
FileSystem: () => memoryFileSystem,
|
||||||
ProcessManager: () => FakeProcessManager.any(),
|
ProcessManager: () => FakeProcessManager.any(),
|
||||||
FuchsiaDeviceTools: () => FakeFuchsiaDeviceTools(tiles: FailingTilesCtl()),
|
FuchsiaDeviceTools: () => FakeFuchsiaDeviceTools(tiles: FailingTilesCtl()),
|
||||||
@ -1176,8 +1167,6 @@ class FuchsiaModulePackage extends ApplicationPackage {
|
|||||||
final String name;
|
final String name;
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
|
|
||||||
class MockFuchsiaArtifacts extends Mock implements FuchsiaArtifacts {}
|
class MockFuchsiaArtifacts extends Mock implements FuchsiaArtifacts {}
|
||||||
|
|
||||||
class MockProcessManager extends Mock implements ProcessManager {}
|
class MockProcessManager extends Mock implements ProcessManager {}
|
||||||
|
@ -36,7 +36,6 @@ void main() {
|
|||||||
|
|
||||||
group('IOSDevice', () {
|
group('IOSDevice', () {
|
||||||
final List<Platform> unsupportedPlatforms = <Platform>[linuxPlatform, windowsPlatform];
|
final List<Platform> unsupportedPlatforms = <Platform>[linuxPlatform, windowsPlatform];
|
||||||
Artifacts mockArtifacts;
|
|
||||||
Cache cache;
|
Cache cache;
|
||||||
MockVmService mockVmService;
|
MockVmService mockVmService;
|
||||||
Logger logger;
|
Logger logger;
|
||||||
@ -45,19 +44,19 @@ void main() {
|
|||||||
FileSystem nullFileSystem;
|
FileSystem nullFileSystem;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
mockArtifacts = MockArtifacts();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
cache = Cache.test();
|
cache = Cache.test();
|
||||||
mockVmService = MockVmService();
|
mockVmService = MockVmService();
|
||||||
logger = BufferLogger.test();
|
logger = BufferLogger.test();
|
||||||
iosDeploy = IOSDeploy(
|
iosDeploy = IOSDeploy(
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
cache: cache,
|
cache: cache,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
platform: macPlatform,
|
platform: macPlatform,
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
);
|
);
|
||||||
iMobileDevice = IMobileDevice(
|
iMobileDevice = IMobileDevice(
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
cache: cache,
|
cache: cache,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
processManager: FakeProcessManager.any(),
|
processManager: FakeProcessManager.any(),
|
||||||
@ -211,7 +210,6 @@ void main() {
|
|||||||
MockProcess mockProcess3;
|
MockProcess mockProcess3;
|
||||||
IOSDevicePortForwarder portForwarder;
|
IOSDevicePortForwarder portForwarder;
|
||||||
ForwardedPort forwardedPort;
|
ForwardedPort forwardedPort;
|
||||||
Artifacts mockArtifacts;
|
|
||||||
Cache cache;
|
Cache cache;
|
||||||
Logger logger;
|
Logger logger;
|
||||||
IOSDeploy iosDeploy;
|
IOSDeploy iosDeploy;
|
||||||
@ -259,10 +257,9 @@ void main() {
|
|||||||
mockProcess2 = MockProcess();
|
mockProcess2 = MockProcess();
|
||||||
mockProcess3 = MockProcess();
|
mockProcess3 = MockProcess();
|
||||||
forwardedPort = ForwardedPort.withContext(123, 456, mockProcess3);
|
forwardedPort = ForwardedPort.withContext(123, 456, mockProcess3);
|
||||||
mockArtifacts = MockArtifacts();
|
|
||||||
cache = Cache.test();
|
cache = Cache.test();
|
||||||
iosDeploy = IOSDeploy(
|
iosDeploy = IOSDeploy(
|
||||||
artifacts: mockArtifacts,
|
artifacts: Artifacts.test(),
|
||||||
cache: cache,
|
cache: cache,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
platform: macPlatform,
|
platform: macPlatform,
|
||||||
@ -303,7 +300,6 @@ void main() {
|
|||||||
|
|
||||||
group('polling', () {
|
group('polling', () {
|
||||||
MockXcdevice mockXcdevice;
|
MockXcdevice mockXcdevice;
|
||||||
MockArtifacts mockArtifacts;
|
|
||||||
Cache cache;
|
Cache cache;
|
||||||
MockVmService mockVmService1;
|
MockVmService mockVmService1;
|
||||||
MockVmService mockVmService2;
|
MockVmService mockVmService2;
|
||||||
@ -317,7 +313,7 @@ void main() {
|
|||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
mockXcdevice = MockXcdevice();
|
mockXcdevice = MockXcdevice();
|
||||||
mockArtifacts = MockArtifacts();
|
final Artifacts artifacts = Artifacts.test();
|
||||||
cache = Cache.test();
|
cache = Cache.test();
|
||||||
mockVmService1 = MockVmService();
|
mockVmService1 = MockVmService();
|
||||||
mockVmService2 = MockVmService();
|
mockVmService2 = MockVmService();
|
||||||
@ -325,14 +321,14 @@ void main() {
|
|||||||
mockIosWorkflow = MockIOSWorkflow();
|
mockIosWorkflow = MockIOSWorkflow();
|
||||||
fakeProcessManager = FakeProcessManager.any();
|
fakeProcessManager = FakeProcessManager.any();
|
||||||
iosDeploy = IOSDeploy(
|
iosDeploy = IOSDeploy(
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
cache: cache,
|
cache: cache,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
platform: macPlatform,
|
platform: macPlatform,
|
||||||
processManager: fakeProcessManager,
|
processManager: fakeProcessManager,
|
||||||
);
|
);
|
||||||
iMobileDevice = IMobileDevice(
|
iMobileDevice = IMobileDevice(
|
||||||
artifacts: mockArtifacts,
|
artifacts: artifacts,
|
||||||
cache: cache,
|
cache: cache,
|
||||||
processManager: fakeProcessManager,
|
processManager: fakeProcessManager,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
@ -602,7 +598,6 @@ void main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MockIOSApp extends Mock implements IOSApp {}
|
class MockIOSApp extends Mock implements IOSApp {}
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
class MockIMobileDevice extends Mock implements IMobileDevice {}
|
class MockIMobileDevice extends Mock implements IMobileDevice {}
|
||||||
class MockIOSDeploy extends Mock implements IOSDeploy {}
|
class MockIOSDeploy extends Mock implements IOSDeploy {}
|
||||||
class MockIOSWorkflow extends Mock implements IOSWorkflow {}
|
class MockIOSWorkflow extends Mock implements IOSWorkflow {}
|
||||||
|
@ -21,17 +21,17 @@ import '../../src/testbed.dart';
|
|||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
FakeProcessManager processManager;
|
FakeProcessManager processManager;
|
||||||
MockArtifacts artifacts;
|
Artifacts artifacts;
|
||||||
FakeCache fakeCache;
|
FakeCache fakeCache;
|
||||||
BufferLogger logger;
|
BufferLogger logger;
|
||||||
|
String ideviceSyslogPath;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
processManager = FakeProcessManager.list(<FakeCommand>[]);
|
processManager = FakeProcessManager.list(<FakeCommand>[]);
|
||||||
fakeCache = FakeCache();
|
fakeCache = FakeCache();
|
||||||
artifacts = MockArtifacts();
|
artifacts = Artifacts.test();
|
||||||
logger = BufferLogger.test();
|
logger = BufferLogger.test();
|
||||||
when(artifacts.getArtifactPath(Artifact.idevicesyslog, platform: TargetPlatform.ios))
|
ideviceSyslogPath = artifacts.getArtifactPath(Artifact.idevicesyslog, platform: TargetPlatform.ios);
|
||||||
.thenReturn('idevice-syslog');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
group('syslog stream', () {
|
group('syslog stream', () {
|
||||||
@ -51,9 +51,9 @@ void main() {
|
|||||||
|
|
||||||
testWithoutContext('IOSDeviceLogReader suppresses non-Flutter lines from output with syslog', () async {
|
testWithoutContext('IOSDeviceLogReader suppresses non-Flutter lines from output with syslog', () async {
|
||||||
processManager.addCommand(
|
processManager.addCommand(
|
||||||
const FakeCommand(
|
FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'idevice-syslog', '-u', '1234',
|
ideviceSyslogPath, '-u', '1234',
|
||||||
],
|
],
|
||||||
stdout: '''
|
stdout: '''
|
||||||
Runner(Flutter)[297] <Notice>: A is for ari
|
Runner(Flutter)[297] <Notice>: A is for ari
|
||||||
@ -79,9 +79,9 @@ Runner(UIKit)[297] <Notice>: E is for enpitsu"
|
|||||||
|
|
||||||
testWithoutContext('IOSDeviceLogReader includes multi-line Flutter logs in the output with syslog', () async {
|
testWithoutContext('IOSDeviceLogReader includes multi-line Flutter logs in the output with syslog', () async {
|
||||||
processManager.addCommand(
|
processManager.addCommand(
|
||||||
const FakeCommand(
|
FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'idevice-syslog', '-u', '1234',
|
ideviceSyslogPath, '-u', '1234',
|
||||||
],
|
],
|
||||||
stdout: '''
|
stdout: '''
|
||||||
Runner(Flutter)[297] <Notice>: This is a multi-line message,
|
Runner(Flutter)[297] <Notice>: This is a multi-line message,
|
||||||
@ -112,9 +112,9 @@ Runner(libsystem_asl.dylib)[297] <Notice>: libMobileGestalt
|
|||||||
|
|
||||||
testWithoutContext('includes multi-line Flutter logs in the output', () async {
|
testWithoutContext('includes multi-line Flutter logs in the output', () async {
|
||||||
processManager.addCommand(
|
processManager.addCommand(
|
||||||
const FakeCommand(
|
FakeCommand(
|
||||||
command: <String>[
|
command: <String>[
|
||||||
'idevice-syslog', '-u', '1234',
|
ideviceSyslogPath, '-u', '1234',
|
||||||
],
|
],
|
||||||
stdout: '''
|
stdout: '''
|
||||||
Runner(Flutter)[297] <Notice>: This is a multi-line message,
|
Runner(Flutter)[297] <Notice>: This is a multi-line message,
|
||||||
@ -325,6 +325,5 @@ Runner(libsystem_asl.dylib)[297] <Notice>: libMobileGestalt
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
class MockVmService extends Mock implements VmService {}
|
class MockVmService extends Mock implements VmService {}
|
||||||
class MockIOSDeployDebugger extends Mock implements IOSDeployDebugger {}
|
class MockIOSDeployDebugger extends Mock implements IOSDeployDebugger {}
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
import 'package:file/memory.dart';
|
import 'package:file/memory.dart';
|
||||||
import 'package:flutter_tools/src/artifacts.dart';
|
|
||||||
import 'package:flutter_tools/src/base/file_system.dart';
|
import 'package:flutter_tools/src/base/file_system.dart';
|
||||||
import 'package:flutter_tools/src/base/logger.dart';
|
import 'package:flutter_tools/src/base/logger.dart';
|
||||||
import 'package:flutter_tools/src/base/platform.dart';
|
import 'package:flutter_tools/src/base/platform.dart';
|
||||||
@ -77,9 +76,6 @@ flutter:
|
|||||||
}
|
}
|
||||||
|
|
||||||
IOSDevice setUpIOSDevice(FileSystem fileSystem) {
|
IOSDevice setUpIOSDevice(FileSystem fileSystem) {
|
||||||
final MockArtifacts artifacts = MockArtifacts();
|
|
||||||
when(artifacts.getArtifactPath(Artifact.iosDeploy, platform: anyNamed('platform')))
|
|
||||||
.thenReturn('ios-deploy');
|
|
||||||
return IOSDevice(
|
return IOSDevice(
|
||||||
'test',
|
'test',
|
||||||
fileSystem: fileSystem,
|
fileSystem: fileSystem,
|
||||||
@ -96,5 +92,4 @@ IOSDevice setUpIOSDevice(FileSystem fileSystem) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
class MockArtifacts extends Mock implements Artifacts {}
|
|
||||||
class MockVmService extends Mock implements VmService {}
|
class MockVmService extends Mock implements VmService {}
|
||||||
|
@ -58,7 +58,6 @@ void main() {
|
|||||||
setUp(() {
|
setUp(() {
|
||||||
mockProcessManager = MockProcessManager();
|
mockProcessManager = MockProcessManager();
|
||||||
outputFile = MemoryFileSystem.test().file('image.png');
|
outputFile = MemoryFileSystem.test().file('image.png');
|
||||||
// when(mockArtifacts.getArtifactPath(Artifact.idevicescreenshot, platform: anyNamed('platform'))).thenReturn(idevicescreenshotPath);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
testWithoutContext('error if idevicescreenshot is not installed', () async {
|
testWithoutContext('error if idevicescreenshot is not installed', () async {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user