OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library pub_tests; | 5 library pub_tests; |
6 | 6 |
7 import 'dart:io'; | 7 import 'dart:io'; |
8 | 8 |
9 import '../../../../../pkg/pathos/lib/path.dart' as path; | |
10 import '../../../../../pkg/scheduled_test/lib/scheduled_test.dart'; | |
11 | |
12 import '../../../../pub/io.dart'; | |
13 import '../../descriptor.dart' as d; | |
14 import '../../test_pub.dart'; | 9 import '../../test_pub.dart'; |
15 | 10 |
16 main() { | 11 main() { |
17 integration('keeps a pub server package locked to the version in the ' | 12 integration('keeps a pub server package locked to the version in the ' |
18 'lockfile', () { | 13 'lockfile', () { |
19 servePackages([packageMap("foo", "1.0.0")]); | 14 servePackages([package("foo", "1.0.0")]); |
20 | 15 |
21 d.appDir([dependencyMap("foo")]).create(); | 16 appDir([dependency("foo")]).scheduleCreate(); |
22 | 17 |
23 // This install should lock the foo dependency to version 1.0.0. | 18 // This install should lock the foo dependency to version 1.0.0. |
24 schedulePub(args: ['install'], | 19 schedulePub(args: ['install'], |
25 output: new RegExp(r"Dependencies installed!$")); | 20 output: new RegExp(r"Dependencies installed!$")); |
26 | 21 |
27 d.packagesDir({"foo": "1.0.0"}).validate(); | 22 packagesDir({"foo": "1.0.0"}).scheduleValidate(); |
28 | 23 |
29 // Delete the packages path to simulate a new checkout of the application. | 24 // Delete the packages path to simulate a new checkout of the application. |
30 schedule(() => deleteDir(path.join(sandboxDir, packagesPath))); | 25 dir(packagesPath).scheduleDelete(); |
31 | 26 |
32 // Start serving a newer package as well. | 27 // Start serving a newer package as well. |
33 servePackages([packageMap("foo", "1.0.1")]); | 28 servePackages([package("foo", "1.0.1")]); |
34 | 29 |
35 // This install shouldn't update the foo dependency due to the lockfile. | 30 // This install shouldn't update the foo dependency due to the lockfile. |
36 schedulePub(args: ['install'], | 31 schedulePub(args: ['install'], |
37 output: new RegExp(r"Dependencies installed!$")); | 32 output: new RegExp(r"Dependencies installed!$")); |
38 | 33 |
39 d.packagesDir({"foo": "1.0.0"}).validate(); | 34 packagesDir({"foo": "1.0.0"}).scheduleValidate(); |
40 }); | 35 }); |
41 } | 36 } |
OLD | NEW |