Index: sdk/lib/_internal/pub_generated/test/run/errors_if_only_transitive_dependency_test.dart |
diff --git a/sdk/lib/_internal/pub_generated/test/run/errors_if_only_transitive_dependency_test.dart b/sdk/lib/_internal/pub_generated/test/run/errors_if_only_transitive_dependency_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..19480f500920bf00cd53ce8d21e8a888daefb91e |
--- /dev/null |
+++ b/sdk/lib/_internal/pub_generated/test/run/errors_if_only_transitive_dependency_test.dart |
@@ -0,0 +1,28 @@ |
+import '../../lib/src/exit_codes.dart' as exit_codes; |
+import '../descriptor.dart' as d; |
+import '../test_pub.dart'; |
+main() { |
+ initConfig(); |
+ integration('Errors if the script is in a non-immediate dependency.', () { |
+ d.dir( |
+ "foo", |
+ [ |
+ d.libPubspec("foo", "1.0.0"), |
+ d.dir("bin", [d.file("bar.dart", "main() => print('foobar');")])]).create(); |
+ d.dir("bar", [d.libPubspec("bar", "1.0.0", deps: { |
+ "foo": { |
+ "path": "../foo" |
+ } |
+ })]).create(); |
+ d.dir(appPath, [d.appPubspec({ |
+ "bar": { |
+ "path": "../bar" |
+ } |
+ })]).create(); |
+ pubGet(); |
+ var pub = pubRun(args: ["foo:script"]); |
+ pub.stderr.expect('Package "foo" is not an immediate dependency.'); |
+ pub.stderr.expect('Cannot run executables in transitive dependencies.'); |
+ pub.shouldExit(exit_codes.DATA); |
+ }); |
+} |