| Index: sdk/lib/_internal/pub_generated/test/cache/repair/reinstalls_git_packages_test.dart
|
| diff --git a/sdk/lib/_internal/pub_generated/test/cache/repair/reinstalls_git_packages_test.dart b/sdk/lib/_internal/pub_generated/test/cache/repair/reinstalls_git_packages_test.dart
|
| index 812b7b7e15b0826fad8297292d054d811ac24e2c..a71e10dacae74e4cd73dbf3380f86ccf4a2eecbb 100644
|
| --- a/sdk/lib/_internal/pub_generated/test/cache/repair/reinstalls_git_packages_test.dart
|
| +++ b/sdk/lib/_internal/pub_generated/test/cache/repair/reinstalls_git_packages_test.dart
|
| @@ -1,34 +1,54 @@
|
| +// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| library pub_tests;
|
| +
|
| import 'package:path/path.dart' as path;
|
| import 'package:scheduled_test/scheduled_test.dart';
|
| +
|
| import '../../../lib/src/io.dart';
|
| import '../../descriptor.dart' as d;
|
| import '../../test_pub.dart';
|
| +
|
| main() {
|
| initConfig();
|
| integration('reinstalls previously cached git packages', () {
|
| + // Create two cached revisions of foo.
|
| d.git('foo.git', [d.libDir('foo'), d.libPubspec('foo', '1.0.0')]).create();
|
| +
|
| d.appDir({
|
| "foo": {
|
| "git": "../foo.git"
|
| }
|
| }).create();
|
| pubGet();
|
| +
|
| d.git('foo.git', [d.libDir('foo'), d.libPubspec('foo', '1.0.1')]).commit();
|
| +
|
| pubUpgrade();
|
| +
|
| + // Break them.
|
| var fooDirs;
|
| schedule(() {
|
| + // Find the cached foo packages for each revision.
|
| var gitCacheDir = path.join(sandboxDir, cachePath, "git");
|
| fooDirs = listDir(
|
| gitCacheDir).where((dir) => path.basename(dir).startsWith("foo-")).toList();
|
| +
|
| + // Delete "foo.dart" from them.
|
| for (var dir in fooDirs) {
|
| deleteEntry(path.join(dir, "lib", "foo.dart"));
|
| }
|
| });
|
| +
|
| + // Repair them.
|
| schedulePub(args: ["cache", "repair"], output: '''
|
| Resetting Git repository for foo 1.0.0...
|
| Resetting Git repository for foo 1.0.1...
|
| Reinstalled 2 packages.''');
|
| +
|
| + // The missing libraries should have been replaced.
|
| schedule(() {
|
| var fooLibs = fooDirs.map((dir) {
|
| var fooDirName = path.basename(dir);
|
| @@ -36,6 +56,7 @@ main() {
|
| fooDirName,
|
| [d.dir("lib", [d.file("foo.dart", 'main() => "foo";')])]);
|
| }).toList();
|
| +
|
| d.dir(cachePath, [d.dir("git", fooLibs)]).validate();
|
| });
|
| });
|
|
|