Index: sdk/lib/_internal/pub_generated/test/list_package_dirs/lists_dependency_directories_test.dart |
diff --git a/sdk/lib/_internal/pub_generated/test/list_package_dirs/lists_dependency_directories_test.dart b/sdk/lib/_internal/pub_generated/test/list_package_dirs/lists_dependency_directories_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c9725c3443c13d54d5c10fb6c683682cf56656a6 |
--- /dev/null |
+++ b/sdk/lib/_internal/pub_generated/test/list_package_dirs/lists_dependency_directories_test.dart |
@@ -0,0 +1,50 @@ |
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.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 d.file. |
+ |
+import 'package:path/path.dart' as path; |
+ |
+import '../../lib/src/io.dart'; |
+import '../descriptor.dart' as d; |
+import '../test_pub.dart'; |
+ |
+main() { |
+ initConfig(); |
+ integration('prints the local paths to all packages in the lockfile', () { |
+ servePackages((builder) => builder.serve("bar", "1.0.0")); |
+ |
+ d.dir("foo", [d.libDir("foo"), d.libPubspec("foo", "1.0.0")]).create(); |
+ |
+ d.dir(appPath, [d.appPubspec({ |
+ "foo": { |
+ "path": path.join(sandboxDir, "foo") |
+ }, |
+ "bar": "any" |
+ })]).create(); |
+ |
+ pubGet(); |
+ |
+ // Note: Using canonicalize here because pub gets the path to the |
+ // entrypoint package from the working directory, which has had symlinks |
+ // resolve. On Mac, "/tmp" is actually a symlink to "/private/tmp", so we |
+ // need to accomodate that. |
+ schedulePub(args: ["list-package-dirs", "--format=json"], outputJson: { |
+ "packages": { |
+ "foo": path.join(sandboxDir, "foo", "lib"), |
+ "bar": port.then( |
+ (p) => |
+ path.join( |
+ sandboxDir, |
+ cachePath, |
+ "hosted", |
+ "localhost%58$p", |
+ "bar-1.0.0", |
+ "lib")), |
+ "myapp": canonicalize(path.join(sandboxDir, appPath, "lib")) |
+ }, |
+ "input_files": [ |
+ canonicalize(path.join(sandboxDir, appPath, "pubspec.lock")), |
+ canonicalize(path.join(sandboxDir, appPath, "pubspec.yaml"))] |
+ }); |
+ }); |
+} |