| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
| 2 // for details. All rights reserved. Use of this source code is governed by a | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 library pub_tests; | |
| 6 | |
| 7 import '../../descriptor.dart' as d; | |
| 8 import '../../test_pub.dart'; | |
| 9 | |
| 10 main() { | |
| 11 initConfig(); | |
| 12 integration('reinstalls previously cached hosted packages', () { | |
| 13 servePackages((builder) { | |
| 14 builder.serve("foo", "1.2.3"); | |
| 15 builder.serve("foo", "1.2.4"); | |
| 16 builder.serve("foo", "1.2.5"); | |
| 17 builder.serve("bar", "1.2.3"); | |
| 18 builder.serve("bar", "1.2.4"); | |
| 19 }); | |
| 20 | |
| 21 // Set up a cache with some broken packages. | |
| 22 d.dir( | |
| 23 cachePath, | |
| 24 [ | |
| 25 d.dir( | |
| 26 'hosted', | |
| 27 [ | |
| 28 d.async( | |
| 29 port.then( | |
| 30 (p) => | |
| 31 d.dir( | |
| 32 'localhost%58$p', | |
| 33 [ | |
| 34 d.dir("foo-1.2.3", [d.libPubspec("foo",
"1.2.3"), d.file("broken.txt")]), | |
| 35 d.dir("foo-1.2.5", [d.libPubspec("foo",
"1.2.5"), d.file("broken.txt")]), | |
| 36 d.dir( | |
| 37 "bar-1.2.4", | |
| 38 [d.libPubspec("bar", "1.2.4"), d.fil
e("broken.txt")])])))])]).create(); | |
| 39 | |
| 40 // Repair them. | |
| 41 schedulePub(args: ["cache", "repair"], output: ''' | |
| 42 Downloading bar 1.2.4... | |
| 43 Downloading foo 1.2.3... | |
| 44 Downloading foo 1.2.5... | |
| 45 Reinstalled 3 packages.'''); | |
| 46 | |
| 47 // The broken versions should have been replaced. | |
| 48 d.hostedCache( | |
| 49 [ | |
| 50 d.dir("bar-1.2.4", [d.nothing("broken.txt")]), | |
| 51 d.dir("foo-1.2.3", [d.nothing("broken.txt")]), | |
| 52 d.dir("foo-1.2.5", [d.nothing("broken.txt")])]).validate(); | |
| 53 }); | |
| 54 } | |
| OLD | NEW |