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

Side by Side Diff: sdk/lib/_internal/pub_generated/test/dependency_computer/no_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 'package:scheduled_test/scheduled_test.dart';
8
9 import '../descriptor.dart' as d;
10 import '../test_pub.dart';
11 import 'utils.dart';
12
13 void main() {
14 initConfig();
15
16 integration("reports no dependencies if no transformers are used", () {
17 d.dir(appPath, [d.pubspec({
18 "name": "myapp",
19 "dependencies": {
20 "foo": {
21 "path": "../foo"
22 }
23 }
24 })]).create();
25
26 d.dir("foo", [d.libPubspec("foo", "1.0.0")]).create();
27
28 expectDependencies({});
29 });
30
31 integration(
32 "reports no dependencies if a transformer is used in a "
33 "package that doesn't expose a transformer",
34 () {
35 d.dir(appPath, [d.pubspec({
36 "name": "myapp",
37 "dependencies": {
38 "foo": {
39 "path": "../foo"
40 }
41 },
42 "transformers": ["foo"]
43 })]).create();
44
45 d.dir(
46 "foo",
47 [
48 d.libPubspec("foo", "1.0.0"),
49 d.dir("lib", [d.file("foo.dart", transformer())])]).create();
50
51 expectDependencies({
52 "foo": []
53 });
54 });
55
56 integration("reports no dependencies for non-file/package imports", () {
57 d.dir(appPath, [d.pubspec({
58 "name": "myapp",
59 "dependencies": {
60 "foo": {
61 "path": "../foo"
62 }
63 },
64 "transformers": ["myapp"]
65 }),
66 d.dir(
67 "lib",
68 [
69 d.file(
70 "myapp.dart",
71 transformer(
72 ["dart:async", "http://dartlang.org/nonexistent.dart"] ))])]).create();
73
74 d.dir(
75 "foo",
76 [
77 d.libPubspec("foo", "1.0.0"),
78 d.dir("lib", [d.file("foo.dart", transformer())])]).create();
79
80 expectDependencies({
81 "myapp": []
82 });
83 });
84
85 integration("reports no dependencies for a single self transformer", () {
86 d.dir(appPath, [d.pubspec({
87 "name": "myapp",
88 "transformers": ["myapp"]
89 }), d.dir("lib", [d.file("myapp.dart", transformer())])]).create();
90
91 expectDependencies({
92 "myapp": []
93 });
94 });
95
96 integration(
97 "reports no dependencies if a transformer applies to files that "
98 "aren't used by the exposed transformer",
99 () {
100 d.dir(appPath, [d.pubspec({
101 "name": "myapp",
102 "dependencies": {
103 "foo": {
104 "path": "../foo"
105 }
106 },
107 "transformers": [{
108 "foo": {
109 "\$include": "lib/myapp.dart"
110 }
111 }, {
112 "foo": {
113 "\$exclude": "lib/transformer.dart"
114 }
115 }, "myapp"]
116 }),
117 d.dir(
118 "lib",
119 [
120 d.file("myapp.dart", ""),
121 d.file("transformer.dart", transformer())])]).create();
122
123 d.dir(
124 "foo",
125 [
126 d.libPubspec("foo", "1.0.0"),
127 d.dir("lib", [d.file("foo.dart", transformer())])]).create();
128
129 expectDependencies({
130 "myapp": [],
131 "foo": []
132 });
133 });
134
135 integration(
136 "reports no dependencies if a transformer applies to a "
137 "dependency's files that aren't used by the exposed transformer",
138 () {
139 d.dir(appPath, [d.pubspec({
140 "name": "myapp",
141 "dependencies": {
142 "foo": {
143 "path": "../foo"
144 }
145 },
146 "transformers": ["myapp"]
147 }),
148 d.dir(
149 "lib",
150 [
151 d.file("myapp.dart", ""),
152 d.file("transformer.dart", transformer(["package:foo/foo.dart" ]))])]).create();
153
154 d.dir("foo", [d.pubspec({
155 "name": "foo",
156 "version": "1.0.0",
157 "transformers": [{
158 "foo": {
159 "\$exclude": "lib/foo.dart"
160 }
161 }]
162 }),
163 d.dir(
164 "lib",
165 [d.file("foo.dart", ""), d.file("transformer.dart", transformer()) ])]).create();
166
167 expectDependencies({
168 'myapp': [],
169 'foo': []
170 });
171 });
172
173 test("reports no dependencies on transformers in future phases", () {
174 d.dir(appPath, [d.pubspec({
175 "name": "myapp",
176 "transformers": [{
177 "myapp/first": {
178 "\$include": "lib/myapp.dart"
179 }
180 }, {
181 "myapp/second": {
182 "\$include": "lib/first.dart"
183 }
184 }, {
185 "myapp/third": {
186 "\$include": "lib/second.dart"
187 }
188 }]
189 }),
190 d.dir(
191 "lib",
192 [
193 d.file("myapp.dart", ""),
194 d.file("first.dart", transformer()),
195 d.file("second.dart", transformer()),
196 d.file("third.dart", transformer())])]).create();
197
198 expectDependencies({
199 'myapp/first': [],
200 'myapp/second': [],
201 'myapp/third': []
202 });
203 });
204 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698