Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(491)

Side by Side Diff: sdk/lib/_internal/pub_generated/test/dependency_computer/import_dependencies_test.dart

Issue 896623005: Use native async/await support in pub. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Code review changes Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(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 import 'utils.dart';
10
11 void main() {
12 initConfig();
13
14 integration(
15 "reports a dependency if a transformed local file is imported",
16 () {
17 d.dir(appPath, [d.pubspec({
18 "name": "myapp",
19 "dependencies": {
20 "foo": {
21 "path": "../foo"
22 }
23 },
24 "transformers": [{
25 "foo": {
26 "\$include": "lib/lib.dart"
27 }
28 }, "myapp"]
29 }),
30 d.dir(
31 "lib",
32 [
33 d.file("myapp.dart", ""),
34 d.file("lib.dart", ""),
35 d.file("transformer.dart", transformer(["lib.dart"]))])]).crea te();
36
37 d.dir("foo", [d.pubspec({
38 "name": "foo",
39 "version": "1.0.0"
40 }), d.dir("lib", [d.file("foo.dart", transformer())])]).create();
41
42 expectDependencies({
43 'myapp': ['foo'],
44 'foo': []
45 });
46 });
47
48 integration(
49 "reports a dependency if a transformed foreign file is imported",
50 () {
51 d.dir(appPath, [d.pubspec({
52 "name": "myapp",
53 "dependencies": {
54 "foo": {
55 "path": "../foo"
56 }
57 },
58 "transformers": ["myapp"]
59 }),
60 d.dir(
61 "lib",
62 [
63 d.file("myapp.dart", ""),
64 d.file("transformer.dart", transformer(["package:foo/foo.dart" ]))])]).create();
65
66 d.dir("foo", [d.pubspec({
67 "name": "foo",
68 "version": "1.0.0",
69 "transformers": [{
70 "foo": {
71 "\$include": "lib/foo.dart"
72 }
73 }]
74 }),
75 d.dir(
76 "lib",
77 [d.file("foo.dart", ""), d.file("transformer.dart", transformer()) ])]).create();
78
79 expectDependencies({
80 'myapp': ['foo'],
81 'foo': []
82 });
83 });
84
85 integration(
86 "reports a dependency if a transformed external package file is "
87 "imported from an export",
88 () {
89 d.dir(appPath, [d.pubspec({
90 "name": "myapp",
91 "dependencies": {
92 "foo": {
93 "path": "../foo"
94 }
95 },
96 "transformers": ["myapp"]
97 }),
98 d.dir(
99 "lib",
100 [
101 d.file("myapp.dart", ""),
102 d.file("transformer.dart", transformer(["local.dart"])),
103 d.file("local.dart", "export 'package:foo/foo.dart';")])]).cre ate();
104
105 d.dir("foo", [d.pubspec({
106 "name": "foo",
107 "version": "1.0.0",
108 "transformers": [{
109 "foo": {
110 "\$include": "lib/foo.dart"
111 }
112 }]
113 }),
114 d.dir(
115 "lib",
116 [d.file("foo.dart", ""), d.file("transformer.dart", transformer()) ])]).create();
117
118 expectDependencies({
119 'myapp': ['foo'],
120 'foo': []
121 });
122 });
123
124 integration(
125 "reports a dependency if a transformed foreign file is "
126 "transitively imported",
127 () {
128 d.dir(appPath, [d.pubspec({
129 "name": "myapp",
130 "dependencies": {
131 "foo": {
132 "path": "../foo"
133 }
134 },
135 "transformers": ["myapp"]
136 }),
137 d.dir(
138 "lib",
139 [
140 d.file("myapp.dart", ""),
141 d.file("transformer.dart", transformer(["local.dart"])),
142 d.file("local.dart", "import 'package:foo/foreign.dart';")])]) .create();
143
144 d.dir("foo", [d.pubspec({
145 "name": "foo",
146 "version": "1.0.0",
147 "transformers": [{
148 "foo": {
149 "\$include": "lib/foo.dart"
150 }
151 }]
152 }),
153 d.dir(
154 "lib",
155 [
156 d.file("foo.dart", ""),
157 d.file("transformer.dart", transformer()),
158 d.file("foreign.dart", "import 'foo.dart';")])]).create();
159
160 expectDependencies({
161 'myapp': ['foo'],
162 'foo': []
163 });
164 });
165
166 integration(
167 "reports a dependency if a transformed foreign file is "
168 "transitively imported across packages",
169 () {
170 d.dir(appPath, [d.pubspec({
171 "name": "myapp",
172 "dependencies": {
173 "foo": {
174 "path": "../foo"
175 }
176 },
177 "transformers": ["myapp"]
178 }),
179 d.dir(
180 "lib",
181 [
182 d.file("myapp.dart", ""),
183 d.file("transformer.dart", transformer(["package:foo/foo.dart" ])),])]).create();
184
185 d.dir("foo", [d.pubspec({
186 "name": "foo",
187 "version": "1.0.0",
188 "dependencies": {
189 "bar": {
190 "path": "../bar"
191 }
192 }
193 }),
194 d.dir("lib", [d.file("foo.dart", "import 'package:bar/bar.dart';")])]) .create();
195
196 d.dir("bar", [d.pubspec({
197 "name": "bar",
198 "version": "1.0.0",
199 "transformers": [{
200 "bar": {
201 "\$include": "lib/bar.dart"
202 }
203 }]
204 }),
205 d.dir(
206 "lib",
207 [d.file("bar.dart", ""), d.file("transformer.dart", transformer()) ])]).create();
208
209 expectDependencies({
210 'myapp': ['bar'],
211 'bar': []
212 });
213 });
214
215 integration(
216 "reports a dependency if an imported file is transformed by a "
217 "different package",
218 () {
219 d.dir(appPath, [d.pubspec({
220 "name": "myapp",
221 "dependencies": {
222 "foo": {
223 "path": "../foo"
224 }
225 },
226 "transformers": [{
227 "foo": {
228 '\$include': 'lib/local.dart'
229 }
230 }, "myapp"]
231 }),
232 d.dir(
233 "lib",
234 [
235 d.file("myapp.dart", ""),
236 d.file("transformer.dart", transformer(["local.dart"])),
237 d.file("local.dart", "")])]).create();
238
239 d.dir("foo", [d.pubspec({
240 "name": "foo",
241 "version": "1.0.0"
242 }), d.dir("lib", [d.file("transformer.dart", transformer())])]).create();
243
244 expectDependencies({
245 'myapp': ['foo'],
246 'foo': []
247 });
248 });
249 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698