OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS 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 file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library analyzer.test.generated.package_test; | 5 library analyzer.test.generated.package_test; |
6 | 6 |
7 import 'package:analyzer/file_system/file_system.dart'; | 7 import 'package:analyzer/file_system/file_system.dart'; |
8 import 'package:analyzer/src/generated/engine.dart'; | 8 import 'package:analyzer/src/generated/engine.dart'; |
9 import 'package:analyzer/src/generated/package.dart'; | 9 import 'package:analyzer/src/generated/package.dart'; |
10 import 'package:analyzer/src/generated/sdk.dart'; | 10 import 'package:analyzer/src/generated/sdk.dart'; |
(...skipping 17 matching lines...) Expand all Loading... |
28 * The name of the pubspec.yaml file. | 28 * The name of the pubspec.yaml file. |
29 */ | 29 */ |
30 const String pubspecName = 'pubspec.yaml'; | 30 const String pubspecName = 'pubspec.yaml'; |
31 | 31 |
32 @reflectiveTest | 32 @reflectiveTest |
33 class DependencyFinderTest extends ResolverTestCase { | 33 class DependencyFinderTest extends ResolverTestCase { |
34 void test_transitiveDependenciesFor_circularDependencies() { | 34 void test_transitiveDependenciesFor_circularDependencies() { |
35 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); | 35 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); |
36 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); | 36 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); |
37 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); | 37 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); |
38 resourceProvider.newFile( | 38 resourceProvider.newFile('$packageA/$pubspecName', ''' |
39 '$packageA/$pubspecName', | |
40 ''' | |
41 dependencies: | 39 dependencies: |
42 b: any | 40 b: any |
43 '''); | 41 '''); |
44 resourceProvider.newFile( | 42 resourceProvider.newFile('$packageB/$pubspecName', ''' |
45 '$packageB/$pubspecName', | |
46 ''' | |
47 dependencies: | 43 dependencies: |
48 c: any | 44 c: any |
49 '''); | 45 '''); |
50 resourceProvider.newFile( | 46 resourceProvider.newFile('$packageC/$pubspecName', ''' |
51 '$packageC/$pubspecName', | |
52 ''' | |
53 dependencies: | 47 dependencies: |
54 a: any | 48 a: any |
55 '''); | 49 '''); |
56 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ | 50 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ |
57 'a': <Folder>[resourceProvider.getFolder(packageA)], | 51 'a': <Folder>[resourceProvider.getFolder(packageA)], |
58 'b': <Folder>[resourceProvider.getFolder(packageB)], | 52 'b': <Folder>[resourceProvider.getFolder(packageB)], |
59 'c': <Folder>[resourceProvider.getFolder(packageC)], | 53 'c': <Folder>[resourceProvider.getFolder(packageC)], |
60 }; | 54 }; |
61 | 55 |
62 DependencyFinder finder = new DependencyFinder(resourceProvider); | 56 DependencyFinder finder = new DependencyFinder(resourceProvider); |
(...skipping 24 matching lines...) Expand all Loading... |
87 List<String> result = | 81 List<String> result = |
88 finder.transitiveDependenciesFor(packageMap, packagePath); | 82 finder.transitiveDependenciesFor(packageMap, packagePath); |
89 expect(result, hasLength(0)); | 83 expect(result, hasLength(0)); |
90 } | 84 } |
91 | 85 |
92 void test_transitiveDependenciesFor_overlappingDependencies() { | 86 void test_transitiveDependenciesFor_overlappingDependencies() { |
93 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); | 87 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); |
94 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); | 88 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); |
95 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); | 89 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); |
96 String packageD = resourceProvider.convertPath('/pub-cache/d-1.0'); | 90 String packageD = resourceProvider.convertPath('/pub-cache/d-1.0'); |
97 resourceProvider.newFile( | 91 resourceProvider.newFile('$packageA/$pubspecName', ''' |
98 '$packageA/$pubspecName', | |
99 ''' | |
100 dependencies: | 92 dependencies: |
101 b: any | 93 b: any |
102 c: any | 94 c: any |
103 '''); | 95 '''); |
104 resourceProvider.newFile( | 96 resourceProvider.newFile('$packageB/$pubspecName', ''' |
105 '$packageB/$pubspecName', | |
106 ''' | |
107 dependencies: | 97 dependencies: |
108 d: any | 98 d: any |
109 '''); | 99 '''); |
110 resourceProvider.newFile( | 100 resourceProvider.newFile('$packageC/$pubspecName', ''' |
111 '$packageC/$pubspecName', | |
112 ''' | |
113 dependencies: | 101 dependencies: |
114 d: any | 102 d: any |
115 '''); | 103 '''); |
116 resourceProvider.newFile('$packageD/$pubspecName', ''); | 104 resourceProvider.newFile('$packageD/$pubspecName', ''); |
117 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ | 105 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ |
118 'a': <Folder>[resourceProvider.getFolder(packageA)], | 106 'a': <Folder>[resourceProvider.getFolder(packageA)], |
119 'b': <Folder>[resourceProvider.getFolder(packageB)], | 107 'b': <Folder>[resourceProvider.getFolder(packageB)], |
120 'c': <Folder>[resourceProvider.getFolder(packageC)], | 108 'c': <Folder>[resourceProvider.getFolder(packageC)], |
121 'd': <Folder>[resourceProvider.getFolder(packageD)], | 109 'd': <Folder>[resourceProvider.getFolder(packageD)], |
122 }; | 110 }; |
123 | 111 |
124 DependencyFinder finder = new DependencyFinder(resourceProvider); | 112 DependencyFinder finder = new DependencyFinder(resourceProvider); |
125 List<String> result = | 113 List<String> result = |
126 finder.transitiveDependenciesFor(packageMap, packageA); | 114 finder.transitiveDependenciesFor(packageMap, packageA); |
127 expect(result, unorderedEquals([packageB, packageC, packageD])); | 115 expect(result, unorderedEquals([packageB, packageC, packageD])); |
128 } | 116 } |
129 | 117 |
130 void test_transitiveDependenciesFor_simpleDependencies() { | 118 void test_transitiveDependenciesFor_simpleDependencies() { |
131 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); | 119 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); |
132 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); | 120 String packageB = resourceProvider.convertPath('/pub-cache/b-1.0'); |
133 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); | 121 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); |
134 resourceProvider.newFile( | 122 resourceProvider.newFile('$packageA/$pubspecName', ''' |
135 '$packageA/$pubspecName', | |
136 ''' | |
137 dependencies: | 123 dependencies: |
138 b: any | 124 b: any |
139 c: any | 125 c: any |
140 '''); | 126 '''); |
141 resourceProvider.newFile('$packageB/$pubspecName', ''); | 127 resourceProvider.newFile('$packageB/$pubspecName', ''); |
142 resourceProvider.newFile('$packageC/$pubspecName', ''); | 128 resourceProvider.newFile('$packageC/$pubspecName', ''); |
143 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ | 129 Map<String, List<Folder>> packageMap = <String, List<Folder>>{ |
144 'a': <Folder>[resourceProvider.getFolder(packageA)], | 130 'a': <Folder>[resourceProvider.getFolder(packageA)], |
145 'b': <Folder>[resourceProvider.getFolder(packageB)], | 131 'b': <Folder>[resourceProvider.getFolder(packageB)], |
146 'c': <Folder>[resourceProvider.getFolder(packageC)], | 132 'c': <Folder>[resourceProvider.getFolder(packageC)], |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 } | 186 } |
201 } | 187 } |
202 | 188 |
203 @reflectiveTest | 189 @reflectiveTest |
204 class PackageManagerTest extends ResolverTestCase { | 190 class PackageManagerTest extends ResolverTestCase { |
205 void test_getContext() { | 191 void test_getContext() { |
206 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); | 192 String packageA = resourceProvider.convertPath('/pub-cache/a-1.0'); |
207 String packageB1 = resourceProvider.convertPath('/pub-cache/b-1.0'); | 193 String packageB1 = resourceProvider.convertPath('/pub-cache/b-1.0'); |
208 String packageB2 = resourceProvider.convertPath('/pub-cache/b-2.0'); | 194 String packageB2 = resourceProvider.convertPath('/pub-cache/b-2.0'); |
209 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); | 195 String packageC = resourceProvider.convertPath('/pub-cache/c-1.0'); |
210 resourceProvider.newFile( | 196 resourceProvider.newFile('$packageA/$pubspecName', ''' |
211 '$packageA/$pubspecName', | |
212 ''' | |
213 dependencies: | 197 dependencies: |
214 b: any | 198 b: any |
215 c: any | 199 c: any |
216 '''); | 200 '''); |
217 resourceProvider.newFile('$packageB1/$pubspecName', ''); | 201 resourceProvider.newFile('$packageB1/$pubspecName', ''); |
218 resourceProvider.newFile('$packageB2/$pubspecName', ''); | 202 resourceProvider.newFile('$packageB2/$pubspecName', ''); |
219 resourceProvider.newFile('$packageC/$pubspecName', ''); | 203 resourceProvider.newFile('$packageC/$pubspecName', ''); |
220 | 204 |
221 Packages packages1 = new _MockPackages(<String, Uri>{ | 205 Packages packages1 = new _MockPackages(<String, Uri>{ |
222 'a': new Uri.file(packageA), | 206 'a': new Uri.file(packageA), |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 | 249 |
266 @override | 250 @override |
267 Map<String, Uri> asMap() => map; | 251 Map<String, Uri> asMap() => map; |
268 | 252 |
269 @override | 253 @override |
270 Uri resolve(Uri packageUri, {Uri notFound(Uri packageUri)}) { | 254 Uri resolve(Uri packageUri, {Uri notFound(Uri packageUri)}) { |
271 fail('Unexpected invocation of resolve'); | 255 fail('Unexpected invocation of resolve'); |
272 return null; | 256 return null; |
273 } | 257 } |
274 } | 258 } |
OLD | NEW |