| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.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 d.file. | 3 // BSD-style license that can be found in the LICENSE d.file. |
| 4 | 4 |
| 5 import 'package:path/path.dart' as path; | 5 import 'package:path/path.dart' as path; |
| 6 | 6 |
| 7 import '../../lib/src/io.dart'; | 7 import '../../lib/src/io.dart'; |
| 8 import '../descriptor.dart' as d; | 8 import '../descriptor.dart' as d; |
| 9 import '../test_pub.dart'; | 9 import '../test_pub.dart'; |
| 10 | 10 |
| 11 main() { | 11 main() { |
| 12 initConfig(); | 12 initConfig(); |
| 13 integration("uses what's in the lockfile regardless of the pubspec", () { | 13 integration("uses what's in the lockfile regardless of the pubspec", () { |
| 14 d.dir("foo", [ | 14 d.dir("foo", [d.libDir("foo"), d.libPubspec("foo", "1.0.0")]).create(); |
| 15 d.libDir("foo"), | |
| 16 d.libPubspec("foo", "1.0.0") | |
| 17 ]).create(); | |
| 18 | 15 |
| 19 d.dir(appPath, [ | 16 d.dir(appPath, [d.appPubspec({ |
| 20 d.appPubspec({ | 17 "foo": { |
| 21 "foo": {"path": path.join(sandboxDir, "foo")} | 18 "path": path.join(sandboxDir, "foo") |
| 22 }) | 19 } |
| 23 ]).create(); | 20 })]).create(); |
| 24 | 21 |
| 25 pubGet(); | 22 pubGet(); |
| 26 | 23 |
| 27 // Add a dependency on "bar" and remove "foo", but don't run "pub get". | 24 // Add a dependency on "bar" and remove "foo", but don't run "pub get". |
| 28 d.dir(appPath, [ | 25 d.dir(appPath, [d.appPubspec({ |
| 29 d.appPubspec({ | |
| 30 "bar": "any" | 26 "bar": "any" |
| 31 }) | 27 })]).create(); |
| 32 ]).create(); | |
| 33 | 28 |
| 34 // Note: Using canonicalize here because pub gets the path to the | 29 // Note: Using canonicalize here because pub gets the path to the |
| 35 // entrypoint package from the working directory, which has had symlinks | 30 // entrypoint package from the working directory, which has had symlinks |
| 36 // resolve. On Mac, "/tmp" is actually a symlink to "/private/tmp", so we | 31 // resolve. On Mac, "/tmp" is actually a symlink to "/private/tmp", so we |
| 37 // need to accomodate that. | 32 // need to accomodate that. |
| 38 schedulePub(args: ["list-package-dirs", "--format=json"], | 33 schedulePub(args: ["list-package-dirs", "--format=json"], outputJson: { |
| 39 outputJson: { | 34 "packages": { |
| 40 "packages": { | 35 "foo": path.join(sandboxDir, "foo", "lib"), |
| 41 "foo": path.join(sandboxDir, "foo", "lib"), | 36 "myapp": canonicalize(path.join(sandboxDir, appPath, "lib")) |
| 42 "myapp": canonicalize(path.join(sandboxDir, appPath, "lib")) | 37 }, |
| 43 }, | 38 "input_files": [ |
| 44 "input_files": [ | 39 canonicalize(path.join(sandboxDir, appPath, "pubspec.lock")), |
| 45 canonicalize(path.join(sandboxDir, appPath, "pubspec.lock")), | 40 canonicalize(path.join(sandboxDir, appPath, "pubspec.yaml"))] |
| 46 canonicalize(path.join(sandboxDir, appPath, "pubspec.yaml")) | 41 }); |
| 47 ] | |
| 48 }); | |
| 49 }); | 42 }); |
| 50 } | 43 } |
| OLD | NEW |