Replace MockFile with memory file system files (#66941)
This commit is contained in:
parent
07e56d4893
commit
e8fbb43aac
@ -32,7 +32,7 @@ void main() {
|
||||
});
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
mockFlutterVersion = MockFlutterVersion();
|
||||
mockGitTagVersion = MockGitTagVersion();
|
||||
mockCache = MockCache();
|
||||
|
@ -31,7 +31,7 @@ void main() {
|
||||
FlutterProject projectUnderTest;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockXcodeProjectInterpreter = MockXcodeProjectInterpreter();
|
||||
|
||||
final Directory currentDirectory = fs.currentDirectory;
|
||||
|
@ -607,7 +607,7 @@ void main() {
|
||||
expect(logger.statusText, contains('No issues found!'));
|
||||
}, overrides: <Type, Generator>{
|
||||
Artifacts: () => mockArtifacts,
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
|
@ -38,7 +38,7 @@ void main() {
|
||||
setUp(() {
|
||||
command = DriveCommand();
|
||||
applyMocksToCommand(command);
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
tempDir = fs.systemTempDirectory.createTempSync('flutter_drive_test.');
|
||||
fs.currentDirectory = tempDir;
|
||||
fs.directory('test').createSync();
|
||||
|
@ -150,7 +150,7 @@ void main() {
|
||||
mockArtifacts = MockArtifacts();
|
||||
mockCache = MockCache();
|
||||
mockUsage = MockUsage();
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockProcessManager = MockProcessManager();
|
||||
|
||||
tempDir = fs.systemTempDirectory.createTempSync('flutter_run_test.');
|
||||
|
@ -52,7 +52,7 @@ void main() {
|
||||
expect(globals.fs.isFileSync(outputFile), isTrue);
|
||||
expect(globals.fs.file(outputFile).readAsStringSync(), contains('__flutter_completion'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Stdio: () => mockStdio,
|
||||
});
|
||||
@ -73,7 +73,7 @@ void main() {
|
||||
expect(globals.fs.isFileSync(outputFile), isTrue);
|
||||
expect(globals.fs.file(outputFile).readAsStringSync(), isEmpty);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Stdio: () => mockStdio,
|
||||
});
|
||||
@ -88,7 +88,7 @@ void main() {
|
||||
expect(globals.fs.isFileSync(outputFile), isTrue);
|
||||
expect(globals.fs.file(outputFile).readAsStringSync(), contains('__flutter_completion'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Stdio: () => mockStdio,
|
||||
});
|
||||
|
@ -26,7 +26,7 @@ void main() {
|
||||
MemoryFileSystem fs;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fs.file('pubspec.yaml').createSync();
|
||||
fs.file('.packages').createSync();
|
||||
fs.directory('test').childFile('some_test.dart').createSync(recursive: true);
|
||||
|
@ -112,7 +112,7 @@ void main() {
|
||||
'--target-platform=windows-x64',
|
||||
]), throwsToolExit());
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isWindowsEnabled: false),
|
||||
});
|
||||
@ -130,7 +130,7 @@ void main() {
|
||||
'--target-platform=linux-x64',
|
||||
]), throwsToolExit());
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isLinuxEnabled: false),
|
||||
});
|
||||
@ -148,7 +148,7 @@ void main() {
|
||||
'--target-platform=darwin-x64',
|
||||
]), throwsToolExit());
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isMacOSEnabled: false),
|
||||
});
|
||||
@ -166,7 +166,7 @@ void main() {
|
||||
'--target-platform=windows-x64',
|
||||
]);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isWindowsEnabled: true),
|
||||
});
|
||||
@ -184,7 +184,7 @@ void main() {
|
||||
'--target-platform=linux-x64',
|
||||
]);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isLinuxEnabled: true),
|
||||
});
|
||||
@ -202,7 +202,7 @@ void main() {
|
||||
'--target-platform=darwin-x64',
|
||||
]);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isMacOSEnabled: true),
|
||||
});
|
||||
@ -234,7 +234,7 @@ void main() {
|
||||
]);
|
||||
}, overrides: <Type, Generator>{
|
||||
BuildSystem: () => MockBuildSystem(),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
}
|
||||
|
@ -117,7 +117,7 @@ void main() {
|
||||
Platform: () => FakePlatform(environment: <String, String>{
|
||||
'FLUTTER_ANALYTICS_LOG_FILE': 'test',
|
||||
}),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -143,7 +143,7 @@ void main() {
|
||||
Platform: () => FakePlatform(environment: <String, String>{
|
||||
'FLUTTER_ANALYTICS_LOG_FILE': 'test',
|
||||
}),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
});
|
||||
@ -157,7 +157,7 @@ void main() {
|
||||
List<int> mockTimes;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
mockStdio = MockStdio();
|
||||
mockUsage = MockUsage();
|
||||
when(mockUsage.isFirstRun).thenReturn(false);
|
||||
|
@ -35,7 +35,7 @@ void main() {
|
||||
|
||||
setUp(() {
|
||||
sdk = MockAndroidSdk();
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fs.directory('/home/me').createSync(recursive: true);
|
||||
logger = BufferLogger(
|
||||
terminal: AnsiTerminal(
|
||||
|
@ -322,7 +322,7 @@ void main() {
|
||||
),
|
||||
).called(1);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Usage: () => mockUsage,
|
||||
});
|
||||
@ -472,7 +472,7 @@ include ':app'
|
||||
expect(tempDir.childFile('settings_aar.gradle').existsSync(), isTrue);
|
||||
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -505,7 +505,7 @@ include ':app'
|
||||
expect(tempDir.childFile('settings_aar.gradle').existsSync(), isTrue);
|
||||
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
});
|
||||
@ -517,7 +517,7 @@ include ':app'
|
||||
FileSystem fs;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockArtifacts = MockLocalEngineArtifacts();
|
||||
mockProcessManager = MockProcessManager();
|
||||
android = fakePlatform('android');
|
||||
@ -786,7 +786,7 @@ flutter:
|
||||
FileSystem fs;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
});
|
||||
|
||||
testUsingContext('returns true when the project is using AndroidX', () async {
|
||||
@ -834,7 +834,7 @@ flutter:
|
||||
MockAndroidSdk mockAndroidSdk;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fakeProcessManager = FakeProcessManager.list(<FakeCommand>[]);
|
||||
mockAndroidSdk = MockAndroidSdk();
|
||||
when(mockAndroidSdk.directory).thenReturn('irrelevant');
|
||||
@ -1013,7 +1013,7 @@ plugin1=${plugin1.path}
|
||||
|
||||
setUp(() {
|
||||
mockUsage = MockUsage();
|
||||
fileSystem = MemoryFileSystem();
|
||||
fileSystem = MemoryFileSystem.test();
|
||||
fileSystemUtils = MockFileSystemUtils();
|
||||
mockAndroidSdk = MockAndroidSdk();
|
||||
mockAndroidStudio = MockAndroidStudio();
|
||||
|
@ -22,7 +22,7 @@ void main() {
|
||||
Directory gradleWrapperDirectory;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
tempDir = memoryFileSystem.systemTempDirectory.createTempSync('flutter_artifacts_test.');
|
||||
gradleWrapperDirectory = memoryFileSystem.directory(
|
||||
memoryFileSystem.path.join(tempDir.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper'));
|
||||
@ -124,7 +124,7 @@ void main() {
|
||||
MemoryFileSystem memoryFileSystem;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
});
|
||||
|
||||
testUsingContext("throws ToolExit if gradle.properties doesn't exist", () {
|
||||
@ -229,7 +229,7 @@ void main() {
|
||||
MockGradleUtils gradleUtils;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
operatingSystemUtils = MockOperatingSystemUtils();
|
||||
gradleUtils = MockGradleUtils();
|
||||
});
|
||||
|
@ -51,7 +51,7 @@ void main() {
|
||||
setUp(() async {
|
||||
sdk = MockitoAndroidSdk();
|
||||
mockProcessManager = MockitoProcessManager();
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockCache = MockCache();
|
||||
Cache.flutterRoot = '../..';
|
||||
when(sdk.licensesAvailable).thenReturn(true);
|
||||
@ -217,7 +217,7 @@ void main() {
|
||||
group('PrebuiltIOSApp', () {
|
||||
MockOperatingSystemUtils os;
|
||||
final Map<Type, Generator> overrides = <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
PlistParser: () => MockPlistUtils(),
|
||||
Platform: _kNoColorTerminalPlatform,
|
||||
@ -365,7 +365,7 @@ void main() {
|
||||
|
||||
group('FuchsiaApp', () {
|
||||
final Map<Type, Generator> overrides = <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Platform: _kNoColorTerminalPlatform,
|
||||
OperatingSystemUtils: () => MockOperatingSystemUtils(),
|
||||
|
@ -23,7 +23,7 @@ void main() {
|
||||
Platform platform;
|
||||
|
||||
setUp(() {
|
||||
fileSystem = MemoryFileSystem();
|
||||
fileSystem = MemoryFileSystem.test();
|
||||
final Directory cacheRoot = fileSystem.directory('root')
|
||||
..createSync();
|
||||
platform = FakePlatform(operatingSystem: 'linux');
|
||||
@ -110,7 +110,7 @@ void main() {
|
||||
Platform platform;
|
||||
|
||||
setUp(() {
|
||||
fileSystem = MemoryFileSystem();
|
||||
fileSystem = MemoryFileSystem.test();
|
||||
final Directory cacheRoot = fileSystem.directory('root')
|
||||
..createSync();
|
||||
platform = FakePlatform(operatingSystem: 'linux');
|
||||
|
@ -21,7 +21,7 @@ void main() {
|
||||
FileSystemUtils fsUtils;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fsUtils = FileSystemUtils(
|
||||
fileSystem: fs,
|
||||
platform: FakePlatform(),
|
||||
@ -61,7 +61,7 @@ void main() {
|
||||
/// Test file_systems.copyDirectorySync() using MemoryFileSystem.
|
||||
/// Copies between 2 instances of file systems which is also supported by copyDirectorySync().
|
||||
testWithoutContext('test directory copy', () async {
|
||||
final MemoryFileSystem sourceMemoryFs = MemoryFileSystem();
|
||||
final MemoryFileSystem sourceMemoryFs = MemoryFileSystem.test();
|
||||
const String sourcePath = '/some/origin';
|
||||
final Directory sourceDirectory = await sourceMemoryFs.directory(sourcePath).create(recursive: true);
|
||||
sourceMemoryFs.currentDirectory = sourcePath;
|
||||
@ -71,7 +71,7 @@ void main() {
|
||||
sourceMemoryFs.directory('empty_directory').createSync();
|
||||
|
||||
// Copy to another memory file system instance.
|
||||
final MemoryFileSystem targetMemoryFs = MemoryFileSystem();
|
||||
final MemoryFileSystem targetMemoryFs = MemoryFileSystem.test();
|
||||
const String targetPath = '/some/non-existent/target';
|
||||
final Directory targetDirectory = targetMemoryFs.directory(targetPath);
|
||||
|
||||
@ -94,7 +94,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Skip files if shouldCopyFile returns false', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final FileSystemUtils fsUtils = FileSystemUtils(
|
||||
fileSystem: fileSystem,
|
||||
platform: FakePlatform(),
|
||||
@ -122,7 +122,7 @@ void main() {
|
||||
|
||||
group('escapePath', () {
|
||||
testWithoutContext('on Windows', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final FileSystemUtils fsUtils = FileSystemUtils(
|
||||
fileSystem: fileSystem,
|
||||
platform: FakePlatform(operatingSystem: 'windows'),
|
||||
@ -133,7 +133,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('on Linux', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final FileSystemUtils fsUtils = FileSystemUtils(
|
||||
fileSystem: fileSystem,
|
||||
platform: FakePlatform(operatingSystem: 'linux'),
|
||||
|
@ -15,7 +15,7 @@ import '../../src/io.dart';
|
||||
|
||||
void main() {
|
||||
test('IOOverrides can inject a memory file system', () async {
|
||||
final MemoryFileSystem memoryFileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem memoryFileSystem = MemoryFileSystem.test();
|
||||
final FlutterIOOverrides flutterIOOverrides = FlutterIOOverrides(fileSystem: memoryFileSystem);
|
||||
await io.IOOverrides.runWithIOOverrides(() async {
|
||||
// statics delegate correctly.
|
||||
|
@ -55,7 +55,7 @@ void main() {
|
||||
|
||||
testWithoutContext('fetchUrl(destFile) writes the data to a file', () async {
|
||||
final Net net = createNet(FakeHttpClient(200, data: responseString));
|
||||
final MemoryFileSystem fs = MemoryFileSystem();
|
||||
final MemoryFileSystem fs = MemoryFileSystem.test();
|
||||
final File destFile = fs.file('dest_file')..createSync();
|
||||
final List<int> data = await net.fetchUrl(
|
||||
Uri.parse('http://example.invalid/'),
|
||||
|
@ -29,7 +29,7 @@ void main() {
|
||||
|
||||
OperatingSystemUtils createOSUtils(Platform platform) {
|
||||
return OperatingSystemUtils(
|
||||
fileSystem: MemoryFileSystem(),
|
||||
fileSystem: MemoryFileSystem.test(),
|
||||
logger: BufferLogger.test(),
|
||||
platform: platform,
|
||||
processManager: mockProcessManager,
|
||||
|
@ -90,7 +90,7 @@ void main() {
|
||||
mockProcessManager = MockProcessManager();
|
||||
fontSubsetProcess = MockProcess();
|
||||
mockArtifacts = MockArtifacts();
|
||||
fileSystem = MemoryFileSystem();
|
||||
fileSystem = MemoryFileSystem.test();
|
||||
logger = BufferLogger(
|
||||
terminal: AnsiTerminal(
|
||||
stdio: mocks.MockStdio(),
|
||||
|
@ -32,7 +32,7 @@ void main() {
|
||||
|
||||
setUp(() {
|
||||
mockFileSystem = MockFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
mockFile = MockFile();
|
||||
mockRandomAccessFile = MockRandomAccessFile();
|
||||
when(mockFileSystem.path).thenReturn(memoryFileSystem.path);
|
||||
@ -89,7 +89,7 @@ void main() {
|
||||
|
||||
setUp(() {
|
||||
mockCache = MockCache();
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
});
|
||||
|
||||
testUsingContext('Continues on failed stamp file update', () async {
|
||||
@ -247,9 +247,9 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('flattenNameSubdirs', () {
|
||||
expect(flattenNameSubdirs(Uri.parse('http://flutter.dev/foo/bar'), MemoryFileSystem()), 'flutter.dev/foo/bar');
|
||||
expect(flattenNameSubdirs(Uri.parse('http://docs.flutter.io/foo/bar'), MemoryFileSystem()), 'docs.flutter.io/foo/bar');
|
||||
expect(flattenNameSubdirs(Uri.parse('https://www.flutter.dev'), MemoryFileSystem()), 'www.flutter.dev');
|
||||
expect(flattenNameSubdirs(Uri.parse('http://flutter.dev/foo/bar'), MemoryFileSystem.test()), 'flutter.dev/foo/bar');
|
||||
expect(flattenNameSubdirs(Uri.parse('http://docs.flutter.io/foo/bar'), MemoryFileSystem.test()), 'docs.flutter.io/foo/bar');
|
||||
expect(flattenNameSubdirs(Uri.parse('https://www.flutter.dev'), MemoryFileSystem.test()), 'www.flutter.dev');
|
||||
});
|
||||
|
||||
group('EngineCachedArtifact', () {
|
||||
@ -303,7 +303,7 @@ void main() {
|
||||
MockCache mockCache;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
processManager = MockProcessManager();
|
||||
mockCache = MockCache();
|
||||
});
|
||||
@ -372,7 +372,7 @@ void main() {
|
||||
expect(iosUsbArtifacts.isUpToDateInner(), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
Cache: () => mockCache,
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -390,7 +390,7 @@ void main() {
|
||||
expect(iosUsbArtifacts.isUpToDateInner(), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
Cache: () => mockCache,
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -402,7 +402,7 @@ void main() {
|
||||
expect(iosUsbArtifacts.isUpToDateInner(), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
Cache: () => mockCache,
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
|
@ -254,7 +254,7 @@ void main() {
|
||||
environment: anyNamed('environment'),
|
||||
)).called(1);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => mockProcessManager,
|
||||
});
|
||||
|
||||
@ -307,7 +307,7 @@ void main() {
|
||||
);
|
||||
expect(testLogger.errorText, hasLength(0));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => mockProcessManager,
|
||||
});
|
||||
|
||||
@ -368,7 +368,7 @@ void main() {
|
||||
expect(testLogger.errorText, hasLength(0));
|
||||
expect(versionCheckFile.existsSync(), isFalse);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => mockProcessManager,
|
||||
});
|
||||
});
|
||||
|
@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
import 'package:file/memory.dart';
|
||||
import 'package:flutter_tools/src/base/file_system.dart';
|
||||
import 'package:flutter_tools/src/base/io.dart';
|
||||
import 'package:flutter_tools/src/build_info.dart';
|
||||
@ -94,7 +95,7 @@ void main() {
|
||||
route: anyNamed('route')
|
||||
)).thenAnswer((Invocation invocation) => Future<int>.value(1));
|
||||
final List<FlutterDevice> devices = <FlutterDevice>[mockFlutterDevice];
|
||||
final MockFile applicationBinary = MockFile();
|
||||
final File applicationBinary = MemoryFileSystem.test().file('binary');
|
||||
final int result = await ColdRunner(
|
||||
devices,
|
||||
applicationBinary: applicationBinary,
|
||||
@ -110,7 +111,6 @@ void main() {
|
||||
});
|
||||
}
|
||||
|
||||
class MockFile extends Mock implements File {}
|
||||
class MockFlutterDevice extends Mock implements FlutterDevice {}
|
||||
class MockDevice extends Mock implements Device {
|
||||
MockDevice() {
|
||||
|
@ -19,7 +19,7 @@ void main() {
|
||||
FakePlatform fakePlatform;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
fakePlatform = FakePlatform(
|
||||
operatingSystem: 'linux',
|
||||
environment: <String, String>{
|
||||
|
@ -5,6 +5,7 @@
|
||||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:file/memory.dart';
|
||||
import 'package:flutter_tools/src/application_package.dart';
|
||||
import 'package:flutter_tools/src/base/context.dart';
|
||||
import 'package:flutter_tools/src/base/file_system.dart';
|
||||
@ -74,10 +75,6 @@ class NullExecutableDesktopDevice extends FakeDesktopDevice {
|
||||
|
||||
class MockAppplicationPackage extends Mock implements ApplicationPackage {}
|
||||
|
||||
class MockFileSystem extends Mock implements FileSystem {}
|
||||
|
||||
class MockFile extends Mock implements File {}
|
||||
|
||||
class MockProcessManager extends Mock implements ProcessManager {}
|
||||
|
||||
void main() {
|
||||
@ -122,16 +119,14 @@ void main() {
|
||||
});
|
||||
|
||||
group('Starting and stopping application', () {
|
||||
final MockFileSystem mockFileSystem = MockFileSystem();
|
||||
final FileSystem memoryFileSystem = MemoryFileSystem.test();
|
||||
final MockProcessManager mockProcessManager = MockProcessManager();
|
||||
|
||||
// Configures mock environment so that startApp will be able to find and
|
||||
// run an FakeDesktopDevice exectuable with for the given mode.
|
||||
void setUpMockExecutable(FakeDesktopDevice device, BuildMode mode, {Future<int> exitFuture}) {
|
||||
final String executableName = device.executablePathForDevice(null, mode);
|
||||
final MockFile mockFile = MockFile();
|
||||
when(mockFileSystem.file(executableName)).thenReturn(mockFile);
|
||||
when(mockFile.existsSync()).thenReturn(true);
|
||||
memoryFileSystem.file(executableName).writeAsStringSync('\n');
|
||||
when(mockProcessManager.start(<String>[executableName])).thenAnswer((Invocation invocation) async {
|
||||
return FakeProcess(
|
||||
exitCode: Completer<int>().future,
|
||||
@ -160,7 +155,7 @@ void main() {
|
||||
expect(result.started, true);
|
||||
expect(result.observatoryUri, Uri.parse('http://127.0.0.1/0'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => mockFileSystem,
|
||||
FileSystem: () => memoryFileSystem,
|
||||
ProcessManager: () => mockProcessManager,
|
||||
});
|
||||
|
||||
@ -180,7 +175,7 @@ void main() {
|
||||
expect(result.started, true);
|
||||
expect(await device.stopApp(package), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => mockFileSystem,
|
||||
FileSystem: () => memoryFileSystem,
|
||||
ProcessManager: () => mockProcessManager,
|
||||
});
|
||||
});
|
||||
|
@ -60,13 +60,11 @@ final vm_service.Isolate fakeIsolate = vm_service.Isolate(
|
||||
void main() {
|
||||
group('fuchsia device', () {
|
||||
MemoryFileSystem memoryFileSystem;
|
||||
MockFile sshConfig;
|
||||
File sshConfig;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
sshConfig = MockFile();
|
||||
when(sshConfig.existsSync()).thenReturn(true);
|
||||
when(sshConfig.absolute).thenReturn(sshConfig);
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
sshConfig = memoryFileSystem.file('ssh_config')..writeAsStringSync('\n');
|
||||
});
|
||||
|
||||
testWithoutContext('stores the requested id and name', () {
|
||||
@ -293,14 +291,14 @@ void main() {
|
||||
group('displays friendly error when', () {
|
||||
MockProcessManager mockProcessManager;
|
||||
MockProcessResult mockProcessResult;
|
||||
MockFile mockFile;
|
||||
File artifactFile;
|
||||
MockProcessManager emptyStdoutProcessManager;
|
||||
MockProcessResult emptyStdoutProcessResult;
|
||||
|
||||
setUp(() {
|
||||
mockProcessManager = MockProcessManager();
|
||||
mockProcessResult = MockProcessResult();
|
||||
mockFile = MockFile();
|
||||
artifactFile = MemoryFileSystem.test().file('artifact');
|
||||
when(mockProcessManager.run(
|
||||
any,
|
||||
environment: anyNamed('environment'),
|
||||
@ -310,8 +308,6 @@ void main() {
|
||||
when(mockProcessResult.exitCode).thenReturn(1);
|
||||
when<String>(mockProcessResult.stdout as String).thenReturn('');
|
||||
when<String>(mockProcessResult.stderr as String).thenReturn('');
|
||||
when(mockFile.absolute).thenReturn(mockFile);
|
||||
when(mockFile.path).thenReturn('');
|
||||
|
||||
emptyStdoutProcessManager = MockProcessManager();
|
||||
emptyStdoutProcessResult = MockProcessResult();
|
||||
@ -341,8 +337,8 @@ void main() {
|
||||
}, overrides: <Type, Generator>{
|
||||
ProcessManager: () => emptyStdoutProcessManager,
|
||||
FuchsiaArtifacts: () => FuchsiaArtifacts(
|
||||
sshConfig: mockFile,
|
||||
devFinder: mockFile,
|
||||
sshConfig: artifactFile,
|
||||
devFinder: artifactFile,
|
||||
),
|
||||
FuchsiaSdk: () => MockFuchsiaSdk(),
|
||||
});
|
||||
@ -362,8 +358,8 @@ void main() {
|
||||
Completer<int> exitCode;
|
||||
StreamController<List<int>> stdout;
|
||||
StreamController<List<int>> stderr;
|
||||
MockFile devFinder;
|
||||
MockFile sshConfig;
|
||||
File devFinder;
|
||||
File sshConfig;
|
||||
|
||||
setUp(() {
|
||||
mockProcessManager = MockProcessManager();
|
||||
@ -376,12 +372,9 @@ void main() {
|
||||
when(mockProcess.exitCode).thenAnswer((Invocation _) => exitCode.future);
|
||||
when(mockProcess.stdout).thenAnswer((Invocation _) => stdout.stream);
|
||||
when(mockProcess.stderr).thenAnswer((Invocation _) => stderr.stream);
|
||||
devFinder = MockFile();
|
||||
sshConfig = MockFile();
|
||||
when(devFinder.existsSync()).thenReturn(true);
|
||||
when(sshConfig.existsSync()).thenReturn(true);
|
||||
when(devFinder.absolute).thenReturn(devFinder);
|
||||
when(sshConfig.absolute).thenReturn(sshConfig);
|
||||
final FileSystem memoryFileSystem = MemoryFileSystem.test();
|
||||
devFinder = memoryFileSystem.file('device-finder')..writeAsStringSync('\n');
|
||||
sshConfig = memoryFileSystem.file('ssh_config')..writeAsStringSync('\n');
|
||||
});
|
||||
|
||||
tearDown(() {
|
||||
@ -700,15 +693,11 @@ void main() {
|
||||
|
||||
group('portForwarder', () {
|
||||
MockProcessManager mockProcessManager;
|
||||
MockFile sshConfig;
|
||||
File sshConfig;
|
||||
|
||||
setUp(() {
|
||||
mockProcessManager = MockProcessManager();
|
||||
|
||||
sshConfig = MockFile();
|
||||
when(sshConfig.path).thenReturn('irrelevant');
|
||||
when(sshConfig.existsSync()).thenReturn(true);
|
||||
when(sshConfig.absolute).thenReturn(sshConfig);
|
||||
sshConfig = MemoryFileSystem.test().file('irrelevant')..writeAsStringSync('\n');
|
||||
});
|
||||
|
||||
testUsingContext('`unforward` prints stdout and stderr if ssh command failed', () async {
|
||||
@ -721,7 +710,7 @@ void main() {
|
||||
when(mockProcessManager.run(<String>[
|
||||
'ssh',
|
||||
'-F',
|
||||
'irrelevant',
|
||||
sshConfig.absolute.path,
|
||||
'-O',
|
||||
'cancel',
|
||||
'-vvv',
|
||||
@ -890,7 +879,7 @@ void main() {
|
||||
File runner;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
osUtils = FakeOperatingSystemUtils();
|
||||
fuchsiaDeviceTools = FakeFuchsiaDeviceTools();
|
||||
fuchsiaSdk = MockFuchsiaSdk();
|
||||
@ -1105,7 +1094,7 @@ void main() {
|
||||
});
|
||||
|
||||
group('sdkNameAndVersion: ', () {
|
||||
MockFile sshConfig;
|
||||
File sshConfig;
|
||||
MockProcessManager mockSuccessProcessManager;
|
||||
MockProcessResult mockSuccessProcessResult;
|
||||
MockProcessManager mockFailureProcessManager;
|
||||
@ -1114,9 +1103,7 @@ void main() {
|
||||
MockProcessResult emptyStdoutProcessResult;
|
||||
|
||||
setUp(() {
|
||||
sshConfig = MockFile();
|
||||
when(sshConfig.existsSync()).thenReturn(true);
|
||||
when(sshConfig.absolute).thenReturn(sshConfig);
|
||||
sshConfig = MemoryFileSystem.test().file('ssh_config')..writeAsStringSync('\n');
|
||||
|
||||
mockSuccessProcessManager = MockProcessManager();
|
||||
mockSuccessProcessResult = MockProcessResult();
|
||||
@ -1196,8 +1183,6 @@ class MockProcessManager extends Mock implements ProcessManager {}
|
||||
|
||||
class MockProcessResult extends Mock implements ProcessResult {}
|
||||
|
||||
class MockFile extends Mock implements File {}
|
||||
|
||||
class MockProcess extends Mock implements Process {}
|
||||
|
||||
Process _createMockProcess({
|
||||
|
@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
import 'package:file/memory.dart';
|
||||
import 'package:flutter_tools/src/base/context.dart';
|
||||
import 'package:flutter_tools/src/base/file_system.dart';
|
||||
import 'package:flutter_tools/src/base/io.dart';
|
||||
@ -16,13 +17,12 @@ import '../../src/mocks.dart';
|
||||
|
||||
void main() {
|
||||
group('FuchsiaPM', () {
|
||||
MockFile pm;
|
||||
File pm;
|
||||
MockProcessManager mockProcessManager;
|
||||
MockFuchsiaArtifacts mockFuchsiaArtifacts;
|
||||
|
||||
setUp(() {
|
||||
pm = MockFile();
|
||||
when(pm.path).thenReturn('pm');
|
||||
pm = MemoryFileSystem.test().file('pm');
|
||||
|
||||
mockFuchsiaArtifacts = MockFuchsiaArtifacts();
|
||||
when(mockFuchsiaArtifacts.pm).thenReturn(pm);
|
||||
@ -74,6 +74,5 @@ void main() {
|
||||
|
||||
class MockFuchsiaArtifacts extends Mock implements FuchsiaArtifacts {}
|
||||
class MockProcessUtils extends Mock implements ProcessUtils {}
|
||||
class MockFile extends Mock implements File {}
|
||||
class MockProcess extends Mock implements Process {}
|
||||
class MockProcessManager extends Mock implements ProcessManager {}
|
||||
|
@ -21,7 +21,7 @@ void main() {
|
||||
FileSystem fs;
|
||||
setUp(() {
|
||||
logger = BufferLogger.test();
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
});
|
||||
|
||||
group('GitHub template creator', () {
|
||||
@ -170,7 +170,7 @@ void main() {
|
||||
_kShortURL
|
||||
);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -196,7 +196,7 @@ void main() {
|
||||
);
|
||||
expect(logger.traceText, contains('Failed to shorten GitHub template URL'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
|
@ -42,7 +42,7 @@ void main() {
|
||||
Logger logger;
|
||||
IOSDeploy iosDeploy;
|
||||
IMobileDevice iMobileDevice;
|
||||
FileSystem mockFileSystem;
|
||||
FileSystem nullFileSystem;
|
||||
|
||||
setUp(() {
|
||||
mockArtifacts = MockArtifacts();
|
||||
@ -70,7 +70,7 @@ void main() {
|
||||
IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -87,7 +87,7 @@ void main() {
|
||||
expect(IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -101,7 +101,7 @@ void main() {
|
||||
expect(IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -115,7 +115,7 @@ void main() {
|
||||
expect(IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -129,7 +129,7 @@ void main() {
|
||||
expect(IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -143,7 +143,7 @@ void main() {
|
||||
expect(IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -160,7 +160,7 @@ void main() {
|
||||
final IOSDevice device = IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -185,7 +185,7 @@ void main() {
|
||||
IOSDevice(
|
||||
'device-123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: platform,
|
||||
iosDeploy: iosDeploy,
|
||||
@ -217,7 +217,7 @@ void main() {
|
||||
MockCache mockCache;
|
||||
Logger logger;
|
||||
IOSDeploy iosDeploy;
|
||||
FileSystem mockFileSystem;
|
||||
FileSystem nullFileSystem;
|
||||
IProxy iproxy;
|
||||
|
||||
IOSDevicePortForwarder createPortForwarder(
|
||||
@ -228,7 +228,7 @@ void main() {
|
||||
id: device.id,
|
||||
logger: logger,
|
||||
operatingSystemUtils: OperatingSystemUtils(
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: FakePlatform(operatingSystem: 'macos'),
|
||||
processManager: FakeProcessManager.any(),
|
||||
@ -276,7 +276,7 @@ void main() {
|
||||
device = IOSDevice(
|
||||
'123',
|
||||
iProxy: IProxy.test(logger: logger, processManager: FakeProcessManager.any()),
|
||||
fileSystem: mockFileSystem,
|
||||
fileSystem: nullFileSystem,
|
||||
logger: logger,
|
||||
platform: macPlatform,
|
||||
iosDeploy: iosDeploy,
|
||||
|
@ -46,7 +46,7 @@ void main () {
|
||||
MockXcode mockXcode;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
mockXcode = MockXcode();
|
||||
xcodeProjectInfoFile = memoryFileSystem.file('project.pbxproj');
|
||||
|
||||
@ -265,7 +265,7 @@ keep this 2
|
||||
File xcodeWorkspaceSharedSettings;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
xcodeWorkspaceSharedSettings = memoryFileSystem.file('WorkspaceSettings.xcsettings');
|
||||
|
||||
testLogger = BufferLogger(
|
||||
@ -345,7 +345,7 @@ keep this 2
|
||||
File xcodeProjectInfoFile;
|
||||
|
||||
setUp(() {
|
||||
memoryFileSystem = MemoryFileSystem();
|
||||
memoryFileSystem = MemoryFileSystem.test();
|
||||
xcodeProjectInfoFile = memoryFileSystem.file('project.pbxproj');
|
||||
|
||||
testLogger = BufferLogger(
|
||||
|
@ -31,7 +31,6 @@ final Map<Type, Generator> noColorTerminalOverride = <Type, Generator>{
|
||||
class MockArtifacts extends Mock implements Artifacts {}
|
||||
class MockCache extends Mock implements Cache {}
|
||||
class MockProcessManager extends Mock implements ProcessManager {}
|
||||
class MockFile extends Mock implements File {}
|
||||
class MockXcodeProjectInterpreter extends Mock implements XcodeProjectInterpreter {}
|
||||
class MockIosProject extends Mock implements IosProject {}
|
||||
|
||||
@ -58,21 +57,18 @@ void main() {
|
||||
});
|
||||
|
||||
group('screenshot', () {
|
||||
final String outputPath = globals.fs.path.join('some', 'test', 'path', 'image.png');
|
||||
MockProcessManager mockProcessManager;
|
||||
MockFile mockOutputFile;
|
||||
File outputFile;
|
||||
|
||||
setUp(() {
|
||||
mockProcessManager = MockProcessManager();
|
||||
mockOutputFile = MockFile();
|
||||
outputFile = MemoryFileSystem.test().file('image.png');
|
||||
when(mockArtifacts.getArtifactPath(Artifact.idevicescreenshot, platform: anyNamed('platform'))).thenReturn(idevicescreenshotPath);
|
||||
});
|
||||
|
||||
testWithoutContext('error if idevicescreenshot is not installed', () async {
|
||||
when(mockOutputFile.path).thenReturn(outputPath);
|
||||
|
||||
// Let `idevicescreenshot` fail with exit code 1.
|
||||
when(mockProcessManager.run(<String>[idevicescreenshotPath, outputPath],
|
||||
when(mockProcessManager.run(<String>[idevicescreenshotPath, outputFile.path],
|
||||
environment: <String, String>{'DYLD_LIBRARY_PATH': libimobiledevicePath},
|
||||
workingDirectory: null,
|
||||
)).thenAnswer((_) => Future<ProcessResult>.value(ProcessResult(4, 1, '', '')));
|
||||
@ -85,14 +81,13 @@ void main() {
|
||||
);
|
||||
|
||||
expect(() async => await iMobileDevice.takeScreenshot(
|
||||
mockOutputFile,
|
||||
outputFile,
|
||||
'1234',
|
||||
IOSDeviceInterface.usb,
|
||||
), throwsA(anything));
|
||||
});
|
||||
|
||||
testWithoutContext('idevicescreenshot captures and returns USB screenshot', () async {
|
||||
when(mockOutputFile.path).thenReturn(outputPath);
|
||||
when(mockProcessManager.run(any, environment: anyNamed('environment'), workingDirectory: null)).thenAnswer(
|
||||
(Invocation invocation) => Future<ProcessResult>.value(ProcessResult(4, 0, '', '')));
|
||||
|
||||
@ -104,18 +99,17 @@ void main() {
|
||||
);
|
||||
|
||||
await iMobileDevice.takeScreenshot(
|
||||
mockOutputFile,
|
||||
outputFile,
|
||||
'1234',
|
||||
IOSDeviceInterface.usb,
|
||||
);
|
||||
verify(mockProcessManager.run(<String>[idevicescreenshotPath, outputPath, '--udid', '1234'],
|
||||
verify(mockProcessManager.run(<String>[idevicescreenshotPath, outputFile.path, '--udid', '1234'],
|
||||
environment: <String, String>{'DYLD_LIBRARY_PATH': libimobiledevicePath},
|
||||
workingDirectory: null,
|
||||
));
|
||||
});
|
||||
|
||||
testWithoutContext('idevicescreenshot captures and returns network screenshot', () async {
|
||||
when(mockOutputFile.path).thenReturn(outputPath);
|
||||
when(mockProcessManager.run(any, environment: anyNamed('environment'), workingDirectory: null)).thenAnswer(
|
||||
(Invocation invocation) => Future<ProcessResult>.value(ProcessResult(4, 0, '', '')));
|
||||
|
||||
@ -127,11 +121,11 @@ void main() {
|
||||
);
|
||||
|
||||
await iMobileDevice.takeScreenshot(
|
||||
mockOutputFile,
|
||||
outputFile,
|
||||
'1234',
|
||||
IOSDeviceInterface.network,
|
||||
);
|
||||
verify(mockProcessManager.run(<String>[idevicescreenshotPath, outputPath, '--udid', '1234', '--network'],
|
||||
verify(mockProcessManager.run(<String>[idevicescreenshotPath, outputFile.path, '--udid', '1234', '--network'],
|
||||
environment: <String, String>{'DYLD_LIBRARY_PATH': libimobiledevicePath},
|
||||
workingDirectory: null,
|
||||
));
|
||||
@ -403,33 +397,27 @@ Exited (sigterm)''',
|
||||
});
|
||||
|
||||
group('Upgrades project.pbxproj for old asset usage', () {
|
||||
const List<String> flutterAssetPbxProjLines = <String>[
|
||||
'/* flutter_assets */',
|
||||
'/* App.framework',
|
||||
'another line',
|
||||
];
|
||||
const String flutterAssetPbxProjLines =
|
||||
'/* flutter_assets */\n'
|
||||
'/* App.framework\n'
|
||||
'another line';
|
||||
|
||||
const List<String> appFlxPbxProjLines = <String>[
|
||||
'/* app.flx',
|
||||
'/* App.framework',
|
||||
'another line',
|
||||
];
|
||||
const String appFlxPbxProjLines =
|
||||
'/* app.flx\n'
|
||||
'/* App.framework\n'
|
||||
'another line';
|
||||
|
||||
const List<String> cleanPbxProjLines = <String>[
|
||||
'/* App.framework',
|
||||
'another line',
|
||||
];
|
||||
const String cleanPbxProjLines =
|
||||
'/* App.framework\n'
|
||||
'another line';
|
||||
|
||||
testWithoutContext('upgradePbxProjWithFlutterAssets', () async {
|
||||
final MockIosProject project = MockIosProject();
|
||||
final MockFile pbxprojFile = MockFile();
|
||||
final File pbxprojFile = MemoryFileSystem.test().file('project.pbxproj')
|
||||
..writeAsStringSync(flutterAssetPbxProjLines);
|
||||
|
||||
when(project.xcodeProjectInfoFile).thenReturn(pbxprojFile);
|
||||
when(project.hostAppBundleName(any)).thenAnswer((_) => Future<String>.value('UnitTestRunner.app'));
|
||||
when(pbxprojFile.readAsLinesSync())
|
||||
.thenAnswer((_) => flutterAssetPbxProjLines);
|
||||
when(pbxprojFile.existsSync())
|
||||
.thenAnswer((_) => true);
|
||||
|
||||
bool result = upgradePbxProjWithFlutterAssets(project, logger);
|
||||
expect(result, true);
|
||||
@ -439,8 +427,7 @@ Exited (sigterm)''',
|
||||
);
|
||||
logger.clear();
|
||||
|
||||
when(pbxprojFile.readAsLinesSync())
|
||||
.thenAnswer((_) => appFlxPbxProjLines);
|
||||
pbxprojFile.writeAsStringSync(appFlxPbxProjLines);
|
||||
result = upgradePbxProjWithFlutterAssets(project, logger);
|
||||
expect(result, true);
|
||||
expect(
|
||||
@ -449,8 +436,7 @@ Exited (sigterm)''',
|
||||
);
|
||||
logger.clear();
|
||||
|
||||
when(pbxprojFile.readAsLinesSync())
|
||||
.thenAnswer((_) => cleanPbxProjLines);
|
||||
pbxprojFile.writeAsStringSync(cleanPbxProjLines);
|
||||
result = upgradePbxProjWithFlutterAssets(project, logger);
|
||||
expect(result, true);
|
||||
expect(
|
||||
|
@ -27,7 +27,6 @@ import '../../src/common.dart';
|
||||
import '../../src/context.dart';
|
||||
import '../../src/mocks.dart';
|
||||
|
||||
class MockFile extends Mock implements File {}
|
||||
class MockIMobileDevice extends Mock implements IMobileDevice {}
|
||||
class MockLogger extends Mock implements Logger {}
|
||||
class MockProcess extends Mock implements Process {}
|
||||
@ -376,8 +375,6 @@ void main() {
|
||||
MockLogger mockLogger;
|
||||
MockProcessManager mockProcessManager;
|
||||
IOSSimulator deviceUnderTest;
|
||||
// only used for fs.path.join()
|
||||
final FileSystem fs = globals.fs;
|
||||
|
||||
setUp(() {
|
||||
mockXcode = MockXcode();
|
||||
@ -415,9 +412,8 @@ void main() {
|
||||
when(mockXcode.majorVersion).thenReturn(8);
|
||||
when(mockXcode.minorVersion).thenReturn(2);
|
||||
expect(deviceUnderTest.supportsScreenshot, true);
|
||||
final MockFile mockFile = MockFile();
|
||||
when(mockFile.path).thenReturn(fs.path.join('some', 'path', 'to', 'screenshot.png'));
|
||||
await deviceUnderTest.takeScreenshot(mockFile);
|
||||
final File screenshot = MemoryFileSystem.test().file('screenshot.png');
|
||||
await deviceUnderTest.takeScreenshot(screenshot);
|
||||
verify(mockProcessManager.run(
|
||||
<String>[
|
||||
'/usr/bin/xcrun',
|
||||
@ -425,7 +421,7 @@ void main() {
|
||||
'io',
|
||||
'x',
|
||||
'screenshot',
|
||||
fs.path.join('some', 'path', 'to', 'screenshot.png'),
|
||||
'screenshot.png',
|
||||
],
|
||||
environment: null,
|
||||
workingDirectory: null,
|
||||
@ -944,7 +940,7 @@ flutter:
|
||||
);
|
||||
expect(simulator.isSupportedForProject(flutterProject), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -962,7 +958,7 @@ flutter:
|
||||
);
|
||||
expect(simulator.isSupportedForProject(flutterProject), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -978,7 +974,7 @@ flutter:
|
||||
);
|
||||
expect(simulator.isSupportedForProject(flutterProject), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
});
|
||||
|
@ -33,7 +33,7 @@ void main() {
|
||||
setUp(() {
|
||||
processManager = mocks.MockProcessManager();
|
||||
platform = FakePlatform(operatingSystem: 'macos');
|
||||
final FileSystem fileSystem = MemoryFileSystem();
|
||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||
fileSystem.file(xcodebuild).createSync(recursive: true);
|
||||
final AnsiTerminal terminal = MockAnsiTerminal();
|
||||
logger = BufferLogger.test(
|
||||
@ -85,7 +85,7 @@ void main() {
|
||||
setUp(() {
|
||||
fakeProcessManager = FakeProcessManager.list(<FakeCommand>[]);
|
||||
platform = FakePlatform(operatingSystem: 'macos');
|
||||
fileSystem = MemoryFileSystem();
|
||||
fileSystem = MemoryFileSystem.test();
|
||||
fileSystem.file(xcodebuild).createSync(recursive: true);
|
||||
terminal = MockAnsiTerminal();
|
||||
logger = BufferLogger.test(
|
||||
@ -534,7 +534,7 @@ Information about project "Runner":
|
||||
FileSystem fs;
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockArtifacts = MockLocalEngineArtifacts();
|
||||
macOS = FakePlatform(operatingSystem: 'macos');
|
||||
fs.file(xcodebuild).createSync(recursive: true);
|
||||
|
@ -104,7 +104,7 @@ void main() {
|
||||
fileSystem: MemoryFileSystem.test(),
|
||||
).isSupportedForProject(flutterProject), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -119,7 +119,7 @@ void main() {
|
||||
fileSystem: MemoryFileSystem.test(),
|
||||
).isSupportedForProject(flutterProject), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -141,7 +141,7 @@ void main() {
|
||||
expect(device.executablePathForDevice(mockApp, BuildMode.profile), profilePath);
|
||||
expect(device.executablePathForDevice(mockApp, BuildMode.release), releasePath);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ import '../src/common.dart';
|
||||
|
||||
void main() {
|
||||
testWithoutContext('state can be set and persists', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final Directory directory = fileSystem.directory('state_dir');
|
||||
directory.createSync();
|
||||
final File stateFile = directory.childFile('.flutter_tool_state');
|
||||
@ -35,7 +35,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('channel versions can be cached and stored', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final Directory directory = fileSystem.directory('state_dir')..createSync();
|
||||
final PersistentToolState state1 = PersistentToolState.test(
|
||||
directory: directory,
|
||||
|
@ -106,7 +106,7 @@ void main() {
|
||||
}
|
||||
|
||||
setUp(() async {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fsWindows = MemoryFileSystem(style: FileSystemStyle.windows);
|
||||
mockClock = MockClock();
|
||||
mockVersion = MockFlutterVersion();
|
||||
@ -841,8 +841,7 @@ dependencies:
|
||||
testUsingContext('Does not throw when AndroidManifest.xml is not found', () async {
|
||||
when(flutterProject.isModule).thenReturn(false);
|
||||
|
||||
final File manifest = MockFile();
|
||||
when(manifest.existsSync()).thenReturn(false);
|
||||
final File manifest = fs.file('AndroidManifest.xml');
|
||||
when(androidProject.appManifestFile).thenReturn(manifest);
|
||||
|
||||
await injectPlugins(flutterProject);
|
||||
@ -1421,8 +1420,6 @@ flutter:
|
||||
class MockAndroidProject extends Mock implements AndroidProject {}
|
||||
class MockFeatureFlags extends Mock implements FeatureFlags {}
|
||||
class MockFlutterProject extends Mock implements FlutterProject {}
|
||||
class MockFile extends Mock implements File {}
|
||||
class MockFileSystem extends Mock implements FileSystem {}
|
||||
class MockIosProject extends Mock implements IosProject {}
|
||||
class MockMacOSProject extends Mock implements MacOSProject {}
|
||||
class MockXcodeProjectInterpreter extends Mock implements XcodeProjectInterpreter {}
|
||||
|
@ -18,7 +18,7 @@ final DateTime inFuture = DateTime.now().add(const Duration(days: 100));
|
||||
void main() {
|
||||
for (final bool asyncScanning in <bool>[true, false]) {
|
||||
testWithoutContext('No last compile, asyncScanning: $asyncScanning', () async {
|
||||
final FileSystem fileSystem = MemoryFileSystem();
|
||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||
final ProjectFileInvalidator projectFileInvalidator = ProjectFileInvalidator(
|
||||
fileSystem: fileSystem,
|
||||
platform: FakePlatform(),
|
||||
@ -39,7 +39,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Empty project, asyncScanning: $asyncScanning', () async {
|
||||
final FileSystem fileSystem = MemoryFileSystem();
|
||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||
final ProjectFileInvalidator projectFileInvalidator = ProjectFileInvalidator(
|
||||
fileSystem: fileSystem,
|
||||
platform: FakePlatform(),
|
||||
@ -60,9 +60,9 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Non-existent files are ignored, asyncScanning: $asyncScanning', () async {
|
||||
final FileSystem fileSystem = MemoryFileSystem();
|
||||
final FileSystem fileSystem = MemoryFileSystem.test();
|
||||
final ProjectFileInvalidator projectFileInvalidator = ProjectFileInvalidator(
|
||||
fileSystem: MemoryFileSystem(),
|
||||
fileSystem: MemoryFileSystem.test(),
|
||||
platform: FakePlatform(),
|
||||
logger: BufferLogger.test(),
|
||||
);
|
||||
|
@ -167,7 +167,7 @@ void main() {
|
||||
await project.ensureReadyForPlatformSpecificTooling();
|
||||
expectExists(project.macos.managedDirectory.childFile('GeneratedPluginRegistrant.swift'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isMacOSEnabled: true),
|
||||
FlutterProjectFactory: () => FlutterProjectFactory(
|
||||
@ -181,7 +181,7 @@ void main() {
|
||||
await project.ensureReadyForPlatformSpecificTooling();
|
||||
expectExists(project.macos.generatedXcodePropertiesFile);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isMacOSEnabled: true),
|
||||
FlutterProjectFactory: () => FlutterProjectFactory(
|
||||
@ -196,7 +196,7 @@ void main() {
|
||||
expectExists(project.linux.managedDirectory.childFile('generated_plugin_registrant.h'));
|
||||
expectExists(project.linux.managedDirectory.childFile('generated_plugin_registrant.cc'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isLinuxEnabled: true),
|
||||
FlutterProjectFactory: () => FlutterProjectFactory(
|
||||
@ -211,7 +211,7 @@ void main() {
|
||||
expectExists(project.windows.managedDirectory.childFile('generated_plugin_registrant.h'));
|
||||
expectExists(project.windows.managedDirectory.childFile('generated_plugin_registrant.cc'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
FeatureFlags: () => TestFeatureFlags(isWindowsEnabled: true),
|
||||
FlutterProjectFactory: () => FlutterProjectFactory(
|
||||
@ -294,7 +294,7 @@ void main() {
|
||||
MemoryFileSystem fs;
|
||||
FlutterProjectFactory flutterProjectFactory;
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockXcodeProjectInterpreter = MockXcodeProjectInterpreter();
|
||||
flutterProjectFactory = FlutterProjectFactory(
|
||||
logger: logger,
|
||||
@ -332,7 +332,7 @@ apply plugin: 'kotlin-android'
|
||||
MockXcodeProjectInterpreter mockXcodeProjectInterpreter;
|
||||
FlutterProjectFactory flutterProjectFactory;
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockPlistUtils = MockPlistUtils();
|
||||
mockXcodeProjectInterpreter = MockXcodeProjectInterpreter();
|
||||
flutterProjectFactory = FlutterProjectFactory(
|
||||
@ -496,7 +496,7 @@ apply plugin: 'kotlin-android'
|
||||
MemoryFileSystem fs;
|
||||
MockXcodeProjectInterpreter mockXcodeProjectInterpreter;
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
mockXcodeProjectInterpreter = MockXcodeProjectInterpreter();
|
||||
});
|
||||
|
||||
|
@ -2196,7 +2196,7 @@ void main() {
|
||||
expect(testLogger.errorText, contains('Failed to write vmservice-out-file at foo'));
|
||||
expect(fakeVmServiceHost.hasRemainingExpectations, false);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => ThrowingForwardingFileSystem(MemoryFileSystem()),
|
||||
FileSystem: () => ThrowingForwardingFileSystem(MemoryFileSystem.test()),
|
||||
}));
|
||||
|
||||
|
||||
|
@ -39,7 +39,7 @@ void main() {
|
||||
});
|
||||
|
||||
setUp(() {
|
||||
fs = MemoryFileSystem();
|
||||
fs = MemoryFileSystem.test();
|
||||
fs.directory(_kFlutterRoot).createSync(recursive: true);
|
||||
fs.directory(_kProjectRoot).createSync(recursive: true);
|
||||
fs.currentDirectory = _kProjectRoot;
|
||||
|
@ -89,7 +89,7 @@ void main() {
|
||||
'FLUTTER_ANALYTICS_LOG_FILE': 'test',
|
||||
'FLUTTER_ROOT': '/',
|
||||
}),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
Usage: () => CrashingUsage(),
|
||||
});
|
||||
@ -130,7 +130,7 @@ void main() {
|
||||
'FLUTTER_ANALYTICS_LOG_FILE': 'test',
|
||||
'FLUTTER_ROOT': '/',
|
||||
}),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
|
||||
CrashReporter: () => WaitingCrashReporter(commandCompleter.future),
|
||||
@ -190,7 +190,7 @@ void main() {
|
||||
},
|
||||
operatingSystem: 'linux'
|
||||
),
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
UserMessages: () => CustomBugInstructions(),
|
||||
});
|
||||
|
@ -26,7 +26,7 @@ void main() {
|
||||
expect(vsCode.version, Version.unknown);
|
||||
expect(bufferLogger.traceText, contains('Error parsing VSCode'));
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
}
|
||||
|
@ -76,7 +76,7 @@ void main() {
|
||||
|
||||
expect(WindowsDevice().isSupportedForProject(flutterProject), true);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -87,7 +87,7 @@ void main() {
|
||||
|
||||
expect(WindowsDevice().isSupportedForProject(flutterProject), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -99,7 +99,7 @@ void main() {
|
||||
|
||||
expect(WindowsDevice().isSupportedForProject(flutterProject), false);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
|
||||
@ -116,7 +116,7 @@ void main() {
|
||||
expect(WindowsDevice().executablePathForDevice(mockApp, BuildMode.profile), profilePath);
|
||||
expect(WindowsDevice().executablePathForDevice(mockApp, BuildMode.release), releasePath);
|
||||
}, overrides: <Type, Generator>{
|
||||
FileSystem: () => MemoryFileSystem(),
|
||||
FileSystem: () => MemoryFileSystem.test(),
|
||||
ProcessManager: () => FakeProcessManager.any(),
|
||||
});
|
||||
});
|
||||
|
@ -5,7 +5,6 @@
|
||||
import 'package:flutter_tools/src/base/platform.dart';
|
||||
import 'package:flutter_tools/src/features.dart';
|
||||
import 'package:flutter_tools/src/windows/windows_workflow.dart';
|
||||
import 'package:mockito/mockito.dart';
|
||||
|
||||
import '../../src/common.dart';
|
||||
import '../../src/context.dart';
|
||||
@ -13,14 +12,12 @@ import '../../src/testbed.dart';
|
||||
|
||||
void main() {
|
||||
Testbed testbed;
|
||||
MockPlatform windows;
|
||||
MockPlatform notWindows;
|
||||
FakePlatform windows;
|
||||
FakePlatform notWindows;
|
||||
|
||||
setUp(() {
|
||||
windows = MockPlatform();
|
||||
notWindows = MockPlatform();
|
||||
when(windows.isWindows).thenReturn(true);
|
||||
when(notWindows.isWindows).thenReturn(false);
|
||||
windows = FakePlatform(operatingSystem: 'windows');
|
||||
notWindows = FakePlatform(operatingSystem: 'linux');
|
||||
testbed = Testbed(
|
||||
overrides: <Type, Generator>{
|
||||
Platform: () => windows,
|
||||
@ -54,8 +51,3 @@ void main() {
|
||||
FeatureFlags: () => TestFeatureFlags(isWindowsEnabled: false),
|
||||
}));
|
||||
}
|
||||
|
||||
class MockPlatform extends Mock implements Platform {
|
||||
@override
|
||||
final Map<String, String> environment = <String, String>{};
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Template.render replaces .img.tmpl files with files from the image source', () {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final Directory templateDir = fileSystem.directory('templates');
|
||||
final Directory imageSourceDir = fileSystem.directory('template_images');
|
||||
final Directory destination = fileSystem.directory('target');
|
||||
@ -84,7 +84,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Template.fromName runs pub get if .packages is missing', () async {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final MockPub pub = MockPub();
|
||||
when(pub.get(
|
||||
context: PubContext.pubGet,
|
||||
@ -107,7 +107,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Template.fromName runs pub get if .packages is missing flutter_template_images', () async {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final MockPub pub = MockPub();
|
||||
when(pub.get(
|
||||
context: PubContext.pubGet,
|
||||
@ -137,7 +137,7 @@ void main() {
|
||||
});
|
||||
|
||||
testWithoutContext('Template.fromName runs pub get if flutter_template_images directory is missing', () async {
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem();
|
||||
final MemoryFileSystem fileSystem = MemoryFileSystem.test();
|
||||
final MockPub pub = MockPub();
|
||||
Cache.flutterRoot = '/flutter';
|
||||
final File packagesFile = fileSystem.directory(Cache.flutterRoot)
|
||||
|
Loading…
x
Reference in New Issue
Block a user