Revert "Lazily download artifacts (III) (#27903)" (#29064)

This reverts commit 3fd36200d9b89322d75c1b6bad37b3ad7f665b81.
diff --git a/packages/flutter_tools/test/cache_test.dart b/packages/flutter_tools/test/cache_test.dart
index 8b25990..1e7916f 100644
--- a/packages/flutter_tools/test/cache_test.dart
+++ b/packages/flutter_tools/test/cache_test.dart
@@ -6,7 +6,6 @@
 
 import 'package:file/file.dart';
 import 'package:file/memory.dart';
-import 'package:flutter_tools/src/build_info.dart';
 import 'package:mockito/mockito.dart';
 import 'package:platform/platform.dart';
 
@@ -61,8 +60,7 @@
       directory.createSync(recursive: true);
       fs.file(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper', 'gradle', 'wrapper', 'gradle-wrapper.jar')).createSync(recursive: true);
       when(mockCache.getCacheDir(fs.path.join('artifacts', 'gradle_wrapper'))).thenReturn(fs.directory(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper')));
-      when(mockCache.getArtifactDirectory('gradle_wrapper')).thenReturn(fs.directory(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper')));
-      expect(gradleWrapper.isUpToDate().isUpToDate, const UpdateResult(isUpToDate: false).isUpToDate);
+      expect(gradleWrapper.isUpToDateInner(), false);
     }, overrides: <Type, Generator>{
       Cache: ()=> mockCache,
       FileSystem: () => fs,
@@ -77,8 +75,7 @@
       fs.file(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper', 'gradlew.bat')).createSync(recursive: true);
 
       when(mockCache.getCacheDir(fs.path.join('artifacts', 'gradle_wrapper'))).thenReturn(fs.directory(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper')));
-      when(mockCache.getArtifactDirectory('gradle_wrapper')).thenReturn(fs.directory(fs.path.join(directory.path, 'artifacts', 'gradle_wrapper')));
-      expect(gradleWrapper.isUpToDate().isUpToDate, const UpdateResult(isUpToDate: true).isUpToDate);
+      expect(gradleWrapper.isUpToDateInner(), true);
     }, overrides: <Type, Generator>{
       Cache: ()=> mockCache,
       FileSystem: () => fs,
@@ -87,37 +84,37 @@
     test('should not be up to date, if some cached artifact is not', () {
       final CachedArtifact artifact1 = MockCachedArtifact();
       final CachedArtifact artifact2 = MockCachedArtifact();
-      when(artifact1.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: true, clobber: false));
-      when(artifact2.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: false, clobber: false));
+      when(artifact1.isUpToDate()).thenReturn(true);
+      when(artifact2.isUpToDate()).thenReturn(false);
       final Cache cache = Cache(artifacts: <CachedArtifact>[artifact1, artifact2]);
-      expect(cache.isUpToDate().isUpToDate, isFalse);
+      expect(cache.isUpToDate(), isFalse);
     });
     test('should be up to date, if all cached artifacts are', () {
       final CachedArtifact artifact1 = MockCachedArtifact();
       final CachedArtifact artifact2 = MockCachedArtifact();
-      when(artifact1.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: true, clobber: false));
-      when(artifact2.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: true, clobber: false));
+      when(artifact1.isUpToDate()).thenReturn(true);
+      when(artifact2.isUpToDate()).thenReturn(true);
       final Cache cache = Cache(artifacts: <CachedArtifact>[artifact1, artifact2]);
-      expect(cache.isUpToDate().isUpToDate, isTrue);
+      expect(cache.isUpToDate(), isTrue);
     });
     test('should update cached artifacts which are not up to date', () async {
       final CachedArtifact artifact1 = MockCachedArtifact();
       final CachedArtifact artifact2 = MockCachedArtifact();
-      when(artifact1.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: true, clobber: false));
-      when(artifact2.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: false, clobber: false));
+      when(artifact1.isUpToDate()).thenReturn(true);
+      when(artifact2.isUpToDate()).thenReturn(false);
       final Cache cache = Cache(artifacts: <CachedArtifact>[artifact1, artifact2]);
       await cache.updateAll();
-      verifyNever(artifact1.update(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown')));
-      verify(artifact2.update(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'), clobber: anyNamed('clobber')));
+      verifyNever(artifact1.update());
+      verify(artifact2.update());
     });
     testUsingContext('failed storage.googleapis.com download shows China warning', () async {
       final CachedArtifact artifact1 = MockCachedArtifact();
       final CachedArtifact artifact2 = MockCachedArtifact();
-      when(artifact1.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: false, clobber: false));
-      when(artifact2.isUpToDate(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'))).thenReturn(const UpdateResult(isUpToDate: false, clobber: false));
+      when(artifact1.isUpToDate()).thenReturn(false);
+      when(artifact2.isUpToDate()).thenReturn(false);
       final MockInternetAddress address = MockInternetAddress();
       when(address.host).thenReturn('storage.googleapis.com');
-      when(artifact1.update(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'), clobber: anyNamed('clobber'))).thenThrow(SocketException(
+      when(artifact1.update()).thenThrow(SocketException(
         'Connection reset by peer',
         address: address,
       ));
@@ -126,203 +123,15 @@
         await cache.updateAll();
         fail('Mock thrown exception expected');
       } catch (e) {
-        verify(artifact1.update(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'), clobber: anyNamed('clobber')));
+        verify(artifact1.update());
         // Don't continue when retrieval fails.
-        verifyNever(artifact2.update(buildModes: anyNamed('buildModes'), targetPlatforms: anyNamed('targetPlatforms'), skipUnknown: anyNamed('skipUnknown'), clobber: anyNamed('clobber')));
+        verifyNever(artifact2.update());
         expect(
           testLogger.errorText,
           contains('https://flutter.io/community/china'),
         );
       }
     });
-
-    final MockPlatform macos = MockPlatform();
-    final MockPlatform windows = MockPlatform();
-    final MockPlatform linux = MockPlatform();
-    when(macos.isMacOS).thenReturn(true);
-    when(macos.isLinux).thenReturn(false);
-    when(macos.isWindows).thenReturn(false);
-    when(windows.isMacOS).thenReturn(false);
-    when(windows.isLinux).thenReturn(false);
-    when(windows.isWindows).thenReturn(true);
-    when(linux.isMacOS).thenReturn(false);
-    when(linux.isLinux).thenReturn(true);
-    when(linux.isWindows).thenReturn(false);
-
-    testUsingContext('Engine cache filtering - macOS', () {
-      final FlutterEngine flutterEngine = FlutterEngine(MockCache());
-      expect(flutterEngine.getBinaryDirs(
-        buildModes: <BuildMode>[BuildMode.release],
-        targetPlatforms: <TargetPlatform>[TargetPlatform.android_arm],
-        skipUnknown: true,
-      ), unorderedEquals(const <BinaryArtifact>[
-        BinaryArtifact(
-          name: 'common',
-          fileName: 'flutter_patched_sdk.zip',
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release',
-          fileName: 'android-arm-release/artifacts.zip',
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-profile/darwin-x64',
-          fileName: 'android-arm-profile/darwin-x64.zip',
-          hostPlatform: TargetPlatform.darwin_x64,
-          buildMode: BuildMode.profile,
-          targetPlatform: TargetPlatform.android_arm,
-          skipChecks: true,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release/darwin-x64',
-          fileName: 'android-arm-release/darwin-x64.zip',
-          hostPlatform: TargetPlatform.darwin_x64,
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'darwin-x64',
-          fileName: 'darwin-x64/artifacts.zip',
-          hostPlatform: TargetPlatform.darwin_x64,
-        ),
-      ]));
-    }, overrides: <Type, Generator>{
-      Platform: () => macos,
-    });
-
-    testUsingContext('Engine cache filtering - unknown mode - macOS', () {
-      final FlutterEngine flutterEngine = FlutterEngine(MockCache());
-      expect(flutterEngine.getBinaryDirs(
-        buildModes: <BuildMode>[],
-        targetPlatforms: <TargetPlatform>[TargetPlatform.ios],
-        skipUnknown: true,
-      ), unorderedEquals(const <BinaryArtifact>[
-        BinaryArtifact(
-          name: 'common',
-          fileName: 'flutter_patched_sdk.zip',
-        ),
-        BinaryArtifact(
-          name: 'android-arm-profile/darwin-x64',
-          fileName: 'android-arm-profile/darwin-x64.zip',
-          hostPlatform: TargetPlatform.darwin_x64,
-          buildMode: BuildMode.profile,
-          targetPlatform: TargetPlatform.android_arm,
-          skipChecks: true,
-        ),
-        BinaryArtifact(
-          name: 'ios', fileName: 'ios/artifacts.zip',
-          buildMode: BuildMode.debug,
-          hostPlatform: TargetPlatform.darwin_x64,
-          targetPlatform: TargetPlatform.ios,
-        ),
-        BinaryArtifact(
-          name: 'ios-profile',
-          fileName: 'ios-profile/artifacts.zip',
-          buildMode: BuildMode.profile,
-          hostPlatform: TargetPlatform.darwin_x64,
-          targetPlatform: TargetPlatform.ios,
-        ),
-        BinaryArtifact(
-          name: 'ios-release',
-          fileName: 'ios-release/artifacts.zip',
-          buildMode: BuildMode.release,
-          hostPlatform: TargetPlatform.darwin_x64,
-          targetPlatform: TargetPlatform.ios,
-        ),
-        BinaryArtifact(
-          name: 'darwin-x64',
-          fileName: 'darwin-x64/artifacts.zip',
-          hostPlatform: TargetPlatform.darwin_x64,
-        ),
-      ]));
-    }, overrides: <Type, Generator>{
-      Platform: () => macos,
-    });
-
-    testUsingContext('Engine cache filtering - Windows', () {
-      final FlutterEngine flutterEngine = FlutterEngine(MockCache());
-      expect(flutterEngine.getBinaryDirs(
-        buildModes: <BuildMode>[BuildMode.release],
-        targetPlatforms: <TargetPlatform>[TargetPlatform.android_arm],
-        skipUnknown: true,
-      ), unorderedEquals(const <BinaryArtifact>[
-          BinaryArtifact(
-          name: 'common',
-          fileName: 'flutter_patched_sdk.zip',
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release',
-          fileName: 'android-arm-release/artifacts.zip',
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-profile/windows-x64',
-          fileName: 'android-arm-profile/windows-x64.zip',
-          hostPlatform: TargetPlatform.windows_x64,
-          buildMode: BuildMode.profile,
-          targetPlatform: TargetPlatform.android_arm,
-          skipChecks: true,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release/windows-x64',
-          fileName: 'android-arm-release/windows-x64.zip',
-          hostPlatform: TargetPlatform.windows_x64,
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'windows-x64',
-          fileName: 'windows-x64/artifacts.zip',
-          hostPlatform: TargetPlatform.windows_x64,
-        ),
-      ]));
-    }, overrides: <Type, Generator>{
-      Platform: () => windows,
-    });
-
-    testUsingContext('Engine cache filtering - linux', () {
-      final FlutterEngine flutterEngine = FlutterEngine(MockCache());
-      expect(flutterEngine.getBinaryDirs(
-        buildModes: <BuildMode>[BuildMode.release],
-        targetPlatforms: <TargetPlatform>[TargetPlatform.android_arm],
-        skipUnknown: true,
-      ), unorderedEquals(const <BinaryArtifact>[
-          BinaryArtifact(
-          name: 'common',
-          fileName: 'flutter_patched_sdk.zip',
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release',
-          fileName: 'android-arm-release/artifacts.zip',
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-profile/linux-x64',
-          fileName: 'android-arm-profile/linux-x64.zip',
-          hostPlatform: TargetPlatform.linux_x64,
-          buildMode: BuildMode.profile,
-          targetPlatform: TargetPlatform.android_arm,
-          skipChecks: true,
-        ),
-        BinaryArtifact(
-          name: 'android-arm-release/linux-x64',
-          fileName: 'android-arm-release/linux-x64.zip',
-          hostPlatform: TargetPlatform.linux_x64,
-          buildMode: BuildMode.release,
-          targetPlatform: TargetPlatform.android_arm,
-        ),
-        BinaryArtifact(
-          name: 'linux-x64',
-          fileName: 'linux-x64/artifacts.zip',
-          hostPlatform: TargetPlatform.linux_x64,
-        ),
-      ]));
-    }, overrides: <Type, Generator>{
-      Platform: () => linux,
-    });
   });
 
   testUsingContext('flattenNameSubdirs', () {
@@ -354,4 +163,3 @@
 class MockCachedArtifact extends Mock implements CachedArtifact {}
 class MockInternetAddress extends Mock implements InternetAddress {}
 class MockCache extends Mock implements Cache {}
-class MockPlatform extends Mock implements Platform {}