| 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.bazel_test; | 5 library analyzer.test.generated.bazel_test; |
| 6 | 6 |
| 7 import 'package:analyzer/file_system/memory_file_system.dart'; | 7 import 'package:analyzer/file_system/memory_file_system.dart'; |
| 8 import 'package:analyzer/src/generated/bazel.dart'; | 8 import 'package:analyzer/src/generated/bazel.dart'; |
| 9 import 'package:analyzer/src/generated/source.dart'; | 9 import 'package:analyzer/src/generated/source.dart'; |
| 10 import 'package:test/test.dart'; | 10 import 'package:test/test.dart'; |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 186 Source source = resolver.resolveAbsolute(uri); | 186 Source source = resolver.resolveAbsolute(uri); |
| 187 expect(source, isNotNull); | 187 expect(source, isNotNull); |
| 188 expect(source.fullName, _p(posixPath)); | 188 expect(source.fullName, _p(posixPath)); |
| 189 expect(source.uri, uri); | 189 expect(source.uri, uri); |
| 190 expect(source.exists(), exists); | 190 expect(source.exists(), exists); |
| 191 } | 191 } |
| 192 } | 192 } |
| 193 | 193 |
| 194 @reflectiveTest | 194 @reflectiveTest |
| 195 class BazelWorkspaceTest extends _BaseTest { | 195 class BazelWorkspaceTest extends _BaseTest { |
| 196 void test_factory_null_noWorkspaceMarkers_inRoot() { | |
| 197 BazelWorkspace workspace = BazelWorkspace.find(provider, _p('/')); | |
| 198 expect(workspace, isNull); | |
| 199 } | |
| 200 | |
| 201 void test_factory_null_noWorkspaceMarkers_inRoot_withReadonly() { | |
| 202 BazelWorkspace workspace = | |
| 203 BazelWorkspace.find(provider, _p('/'), readonlySuffix: 'READONLY'); | |
| 204 expect(workspace, isNull); | |
| 205 } | |
| 206 | |
| 207 void test_find_fail_notAbsolute() { | 196 void test_find_fail_notAbsolute() { |
| 208 expect(() => BazelWorkspace.find(provider, _p('not_absolute')), | 197 expect(() => BazelWorkspace.find(provider, _p('not_absolute')), |
| 209 throwsArgumentError); | 198 throwsArgumentError); |
| 210 } | 199 } |
| 211 | 200 |
| 212 void test_find_hasReadonlyFolder() { | 201 void test_find_hasReadonlyFolder() { |
| 213 provider.newFolder(_p('/Users/user/test/READONLY/prime')); | 202 provider.newFolder(_p('/Users/user/test/READONLY/prime')); |
| 214 provider.newFolder(_p('/Users/user/test/prime')); | 203 provider.newFolder(_p('/Users/user/test/prime')); |
| 215 provider.newFolder(_p('/Users/user/test/prime/bazel-genfiles')); | 204 provider.newFolder(_p('/Users/user/test/prime/bazel-genfiles')); |
| 216 BazelWorkspace workspace = BazelWorkspace.find( | 205 BazelWorkspace workspace = |
| 217 provider, _p('/Users/user/test/prime/my/module'), | 206 BazelWorkspace.find(provider, _p('/Users/user/test/prime/my/module')); |
| 218 readonlySuffix: 'prime'); | |
| 219 expect(workspace.root, _p('/Users/user/test/prime')); | 207 expect(workspace.root, _p('/Users/user/test/prime')); |
| 220 expect(workspace.readonly, _p('/Users/user/test/READONLY/prime')); | 208 expect(workspace.readonly, _p('/Users/user/test/READONLY/prime')); |
| 221 expect(workspace.bin, _p('/Users/user/test/prime/bazel-bin')); | 209 expect(workspace.bin, _p('/Users/user/test/prime/bazel-bin')); |
| 222 expect(workspace.genfiles, _p('/Users/user/test/prime/bazel-genfiles')); | 210 expect(workspace.genfiles, _p('/Users/user/test/prime/bazel-genfiles')); |
| 223 } | 211 } |
| 224 | 212 |
| 213 void test_find_hasReadonlyFolder_bad_actuallyHasWorkspaceFile() { |
| 214 provider.newFolder(_p('/Users/user/test/READONLY')); |
| 215 provider.newFile(_p('/Users/user/test/prime/WORKSPACE'), ''); |
| 216 provider.newFolder(_p('/Users/user/test/prime/bazel-genfiles')); |
| 217 BazelWorkspace workspace = |
| 218 BazelWorkspace.find(provider, _p('/Users/user/test/prime/my/module')); |
| 219 expect(workspace.root, _p('/Users/user/test/prime')); |
| 220 expect(workspace.readonly, isNull); |
| 221 expect(workspace.bin, _p('/Users/user/test/prime/bazel-bin')); |
| 222 expect(workspace.genfiles, _p('/Users/user/test/prime/bazel-genfiles')); |
| 223 } |
| 224 |
| 225 void test_find_hasReadonlyFolder_blaze() { | 225 void test_find_hasReadonlyFolder_blaze() { |
| 226 provider.newFolder(_p('/Users/user/test/READONLY/prime')); | 226 provider.newFolder(_p('/Users/user/test/READONLY/prime')); |
| 227 provider.newFolder(_p('/Users/user/test/prime')); | 227 provider.newFolder(_p('/Users/user/test/prime')); |
| 228 provider.newFolder(_p('/Users/user/test/prime/blaze-genfiles')); | 228 provider.newFolder(_p('/Users/user/test/prime/blaze-genfiles')); |
| 229 BazelWorkspace workspace = BazelWorkspace.find( | 229 BazelWorkspace workspace = |
| 230 provider, _p('/Users/user/test/prime/my/module'), | 230 BazelWorkspace.find(provider, _p('/Users/user/test/prime/my/module')); |
| 231 readonlySuffix: 'prime'); | |
| 232 expect(workspace.root, _p('/Users/user/test/prime')); | 231 expect(workspace.root, _p('/Users/user/test/prime')); |
| 233 expect(workspace.readonly, _p('/Users/user/test/READONLY/prime')); | 232 expect(workspace.readonly, _p('/Users/user/test/READONLY/prime')); |
| 234 expect(workspace.bin, _p('/Users/user/test/prime/blaze-bin')); | 233 expect(workspace.bin, _p('/Users/user/test/prime/blaze-bin')); |
| 235 expect(workspace.genfiles, _p('/Users/user/test/prime/blaze-genfiles')); | 234 expect(workspace.genfiles, _p('/Users/user/test/prime/blaze-genfiles')); |
| 236 } | 235 } |
| 237 | 236 |
| 238 void test_find_hasWorkspaceFile() { | 237 void test_find_hasWorkspaceFile() { |
| 239 provider.newFile(_p('/workspace/WORKSPACE'), ''); | 238 provider.newFile(_p('/workspace/WORKSPACE'), ''); |
| 240 provider.newFolder(_p('/workspace/bazel-genfiles')); | 239 provider.newFolder(_p('/workspace/bazel-genfiles')); |
| 241 BazelWorkspace workspace = | 240 BazelWorkspace workspace = |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 BazelWorkspace workspace = | 280 BazelWorkspace workspace = |
| 282 BazelWorkspace.find(provider, _p('/workspace/my/module')); | 281 BazelWorkspace.find(provider, _p('/workspace/my/module')); |
| 283 expect(workspace, isNull); | 282 expect(workspace, isNull); |
| 284 } | 283 } |
| 285 | 284 |
| 286 void test_find_null_noWorkspaceMarkers_inRoot() { | 285 void test_find_null_noWorkspaceMarkers_inRoot() { |
| 287 BazelWorkspace workspace = BazelWorkspace.find(provider, _p('/')); | 286 BazelWorkspace workspace = BazelWorkspace.find(provider, _p('/')); |
| 288 expect(workspace, isNull); | 287 expect(workspace, isNull); |
| 289 } | 288 } |
| 290 | 289 |
| 291 void test_find_null_noWorkspaceMarkers_inRoot_withReadonly() { | |
| 292 BazelWorkspace workspace = | |
| 293 BazelWorkspace.find(provider, _p('/'), readonlySuffix: 'READONLY'); | |
| 294 expect(workspace, isNull); | |
| 295 } | |
| 296 | |
| 297 void test_find_null_symlinkPrefix() { | 290 void test_find_null_symlinkPrefix() { |
| 298 provider.newFile(_p('/workspace/WORKSPACE'), ''); | 291 provider.newFile(_p('/workspace/WORKSPACE'), ''); |
| 299 BazelWorkspace workspace = | 292 BazelWorkspace workspace = |
| 300 BazelWorkspace.find(provider, _p('/workspace/my/module')); | 293 BazelWorkspace.find(provider, _p('/workspace/my/module')); |
| 301 expect(workspace, isNull); | 294 expect(workspace, isNull); |
| 302 } | 295 } |
| 303 | 296 |
| 304 void test_findFile_hasReadonlyFolder() { | 297 void test_findFile_hasReadonlyFolder() { |
| 305 provider.newFolder(_p('/Users/user/test/READONLY/prime')); | 298 provider.newFolder(_p('/Users/user/test/READONLY/prime')); |
| 306 provider.newFolder(_p('/Users/user/test/prime')); | 299 provider.newFolder(_p('/Users/user/test/prime')); |
| 307 provider.newFile(_p('/Users/user/test/prime/my/module/test1.dart'), ''); | 300 provider.newFile(_p('/Users/user/test/prime/my/module/test1.dart'), ''); |
| 308 provider.newFile(_p('/Users/user/test/prime/my/module/test2.dart'), ''); | 301 provider.newFile(_p('/Users/user/test/prime/my/module/test2.dart'), ''); |
| 309 provider.newFile(_p('/Users/user/test/prime/my/module/test3.dart'), ''); | 302 provider.newFile(_p('/Users/user/test/prime/my/module/test3.dart'), ''); |
| 310 provider.newFile( | 303 provider.newFile( |
| 311 _p('/Users/user/test/prime/bazel-bin/my/module/test2.dart'), ''); | 304 _p('/Users/user/test/prime/bazel-bin/my/module/test2.dart'), ''); |
| 312 provider.newFile( | 305 provider.newFile( |
| 313 _p('/Users/user/test/prime/bazel-genfiles/my/module/test3.dart'), ''); | 306 _p('/Users/user/test/prime/bazel-genfiles/my/module/test3.dart'), ''); |
| 314 provider.newFile( | 307 provider.newFile( |
| 315 _p('/Users/user/test/READONLY/prime/other/module/test4.dart'), ''); | 308 _p('/Users/user/test/READONLY/prime/other/module/test4.dart'), ''); |
| 316 BazelWorkspace workspace = BazelWorkspace.find( | 309 BazelWorkspace workspace = |
| 317 provider, _p('/Users/user/test/prime/my/module'), | 310 BazelWorkspace.find(provider, _p('/Users/user/test/prime/my/module')); |
| 318 readonlySuffix: 'prime'); | |
| 319 expect( | 311 expect( |
| 320 workspace | 312 workspace |
| 321 .findFile(_p('/Users/user/test/prime/my/module/test1.dart')) | 313 .findFile(_p('/Users/user/test/prime/my/module/test1.dart')) |
| 322 .path, | 314 .path, |
| 323 _p('/Users/user/test/prime/my/module/test1.dart')); | 315 _p('/Users/user/test/prime/my/module/test1.dart')); |
| 324 expect( | 316 expect( |
| 325 workspace | 317 workspace |
| 326 .findFile(_p('/Users/user/test/prime/my/module/test2.dart')) | 318 .findFile(_p('/Users/user/test/prime/my/module/test2.dart')) |
| 327 .path, | 319 .path, |
| 328 _p('/Users/user/test/prime/bazel-bin/my/module/test2.dart')); | 320 _p('/Users/user/test/prime/bazel-bin/my/module/test2.dart')); |
| (...skipping 28 matching lines...) Expand all Loading... |
| 357 } | 349 } |
| 358 | 350 |
| 359 class _BaseTest { | 351 class _BaseTest { |
| 360 final MemoryResourceProvider provider = new MemoryResourceProvider(); | 352 final MemoryResourceProvider provider = new MemoryResourceProvider(); |
| 361 | 353 |
| 362 /** | 354 /** |
| 363 * Return the [provider] specific path for the given Posix [path]. | 355 * Return the [provider] specific path for the given Posix [path]. |
| 364 */ | 356 */ |
| 365 String _p(String path) => provider.convertPath(path); | 357 String _p(String path) => provider.convertPath(path); |
| 366 } | 358 } |
| OLD | NEW |