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

Unified Diff: pkg/analyzer/test/generated/bazel_test.dart

Issue 2403723002: Add more tests for BazelPackageUriResolver.resolveAbsolute(). (Closed)
Patch Set: Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/analyzer/lib/src/generated/bazel.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/test/generated/bazel_test.dart
diff --git a/pkg/analyzer/test/generated/bazel_test.dart b/pkg/analyzer/test/generated/bazel_test.dart
index 889419a841eccc9fc0c717746c54bc6e86253dde..af24c22ce71ab9a00df93af5ea06b4f306f885df 100644
--- a/pkg/analyzer/test/generated/bazel_test.dart
+++ b/pkg/analyzer/test/generated/bazel_test.dart
@@ -103,84 +103,305 @@ class BazelPackageUriResolverTest extends _BaseTest {
BazelWorkspace workspace;
BazelPackageUriResolver resolver;
- void setUp() {
- provider.newFile(_p('/workspace/WORKSPACE'), '');
- provider.newFolder(_p('/workspace/bazel-genfiles'));
- workspace = BazelWorkspace.find(provider, _p('/workspace'));
- resolver = new BazelPackageUriResolver(workspace);
- provider.newFile(_p('/workspace/my/foo/lib/foo1.dart'), '');
- provider.newFile(_p('/workspace/my/foo/lib/gen1.dart'), '');
- provider.newFile(_p('/workspace/my/foo/lib/gen2.dart'), '');
- provider.newFile(_p('/workspace/my/foo/lib/src/foo4.dart'), '');
- provider.newFile(_p('/workspace/third_party/dart/bar/lib/bar1.dart'), '');
- provider.newFile(
- _p('/workspace/third_party/dart/bar/lib/src/bar2.dart'), '');
- provider.newFile(_p('/workspace/bazel-bin/my/foo/lib/gen1.dart'), '');
- provider.newFile(_p('/workspace/bazel-genfiles/my/foo/lib/gen2.dart'), '');
- provider.newFile(_p('/workspace/bazel-genfiles/my/foo/lib/gen3.dart'), '');
- }
-
- void test_resolveAbsolute_inBazelBin() {
+ void test_resolveAbsolute_bin() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/my/foo/lib/foo1.dart',
+ '/workspace/bazel-bin/my/foo/lib/foo1.dart'
+ ]);
_assertResolve(
- 'package:my.foo/gen1.dart', '/workspace/bazel-bin/my/foo/lib/gen1.dart',
+ 'package:my.foo/foo1.dart', '/workspace/bazel-bin/my/foo/lib/foo1.dart',
exists: true);
}
- void test_resolveAbsolute_inBazelGenfiles() {
- _assertResolve('package:my.foo/gen2.dart',
- '/workspace/bazel-genfiles/my/foo/lib/gen2.dart',
+ void test_resolveAbsolute_bin_notInWorkspace() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/bazel-bin/my/foo/lib/foo1.dart'
+ ]);
+ _assertResolve(
+ 'package:my.foo/foo1.dart', '/workspace/bazel-bin/my/foo/lib/foo1.dart',
exists: true);
}
- void test_resolveAbsolute_inBazelGenfiles_notInWorkspace() {
- _assertResolve('package:my.foo/gen3.dart',
- '/workspace/bazel-genfiles/my/foo/lib/gen3.dart',
+ void test_resolveAbsolute_genfiles() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/my/foo/lib/foo1.dart',
+ '/workspace/bazel-genfiles/my/foo/lib/foo1.dart'
+ ]);
+ _assertResolve('package:my.foo/foo1.dart',
+ '/workspace/bazel-genfiles/my/foo/lib/foo1.dart',
exists: true);
}
- void test_resolveAbsolute_inWorkspace_doesNotExist() {
- _assertResolve('package:my.foo/doesNotExist.dart',
- '/workspace/my/foo/lib/doesNotExist.dart',
- exists: false);
- }
-
- void test_resolveAbsolute_inWorkspace_exists() {
- _assertResolve(
- 'package:my.foo/foo1.dart', '/workspace/my/foo/lib/foo1.dart',
+ void test_resolveAbsolute_genfiles_notInWorkspace() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/bazel-genfiles/my/foo/lib/foo1.dart'
+ ]);
+ _assertResolve('package:my.foo/foo1.dart',
+ '/workspace/bazel-genfiles/my/foo/lib/foo1.dart',
exists: true);
}
void test_resolveAbsolute_null_noSlash() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ ]);
Source source = resolver.resolveAbsolute(Uri.parse('package:foo'));
expect(source, isNull);
}
void test_resolveAbsolute_null_notPackage() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ ]);
Source source = resolver.resolveAbsolute(Uri.parse('dart:async'));
expect(source, isNull);
}
void test_resolveAbsolute_null_startsWithSlash() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/my/foo/lib/bar.dart',
+ ]);
Source source =
resolver.resolveAbsolute(Uri.parse('package:/foo/bar.dart'));
expect(source, isNull);
}
+ void test_resolveAbsolute_readonly_bin() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/my/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-bin/my/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/prime/bazel-bin/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_bin_notInWorkspace() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-bin/my/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/prime/bazel-bin/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_genfiles() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/my/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-genfiles/my/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_genfiles_notInWorkspace() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-genfiles/my/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_thirdParty_bin() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/third_party/dart/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:foo/foo1.dart',
+ '/Users/user/test/prime/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_thirdParty_genfiles() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/third_party/dart/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ '/Users/user/test/prime/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:foo/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_thirdParty_workspace_doesNotExist() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/third_party/dart/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:foo/foo2.dart',
+ '/Users/user/test/prime/third_party/dart/foo/lib/foo2.dart',
+ exists: false);
+ }
+
+ void test_resolveAbsolute_readonly_thirdParty_workspace_exists() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/third_party/dart/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:foo/foo1.dart',
+ '/Users/user/test/READONLY/prime/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_readonly_workspace_doesNotExist() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/prime/my/foo/lib/foo1.dart',
+ exists: false);
+ }
+
+ void test_resolveAbsolute_readonly_workspace_exists() {
+ _addResources([
+ '/Users/user/test/READONLY/prime/',
+ '/Users/user/test/READONLY/prime/my/foo/lib/foo1.dart',
+ '/Users/user/test/prime/bazel-genfiles/',
+ '/Users/user/test/prime/my/module/',
+ ], workspacePath: '/Users/user/test/prime/my/module');
+ _assertResolve('package:my.foo/foo1.dart',
+ '/Users/user/test/READONLY/prime/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_thirdParty_bin() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/third_party/dart/foo/lib/foo1.dart',
+ '/workspace/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo1.dart',
+ '/workspace/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_thirdParty_bin_notInWorkspace() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo1.dart',
+ '/workspace/bazel-bin/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
void test_resolveAbsolute_thirdParty_doesNotExist() {
- _assertResolve('package:baz/baz1.dart',
- '/workspace/third_party/dart/baz/lib/baz1.dart',
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo2.dart',
+ '/workspace/third_party/dart/foo/lib/foo2.dart',
exists: false);
}
void test_resolveAbsolute_thirdParty_exists() {
- _assertResolve('package:bar/bar1.dart',
- '/workspace/third_party/dart/bar/lib/bar1.dart',
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo1.dart',
+ '/workspace/third_party/dart/foo/lib/foo1.dart',
exists: true);
- _assertResolve('package:bar/src/bar2.dart',
- '/workspace/third_party/dart/bar/lib/src/bar2.dart',
+ }
+
+ void test_resolveAbsolute_thirdParty_genfiles() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/third_party/dart/foo/lib/foo1.dart',
+ '/workspace/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo1.dart',
+ '/workspace/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
exists: true);
}
+ void test_resolveAbsolute_thirdParty_genfiles_notInWorkspace() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
+ ]);
+ _assertResolve('package:foo/foo1.dart',
+ '/workspace/bazel-genfiles/third_party/dart/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void test_resolveAbsolute_workspace_doesNotExist() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ ]);
+ _assertResolve('package:my.foo/doesNotExist.dart',
+ '/workspace/my/foo/lib/doesNotExist.dart',
+ exists: false);
+ }
+
+ void test_resolveAbsolute_workspace_exists() {
+ _addResources([
+ '/workspace/WORKSPACE',
+ '/workspace/bazel-genfiles/',
+ '/workspace/my/foo/lib/foo1.dart',
+ ]);
+ _assertResolve(
+ 'package:my.foo/foo1.dart', '/workspace/my/foo/lib/foo1.dart',
+ exists: true);
+ }
+
+ void _addResources(List<String> paths, {String workspacePath: '/workspace'}) {
+ for (String path in paths) {
+ if (path.endsWith('/')) {
+ provider.newFolder(_p(path.substring(0, path.length - 1)));
+ } else {
+ provider.newFile(_p(path), '');
Brian Wilkerson 2016/10/09 21:35:36 If "_p" is only invoked twice, then perhaps we sho
+ }
+ }
+ workspace = BazelWorkspace.find(provider, _p(workspacePath));
+ resolver = new BazelPackageUriResolver(workspace);
+ }
+
void _assertResolve(String uriStr, String posixPath, {bool exists: true}) {
Uri uri = Uri.parse(uriStr);
Source source = resolver.resolveAbsolute(uri);
« no previous file with comments | « pkg/analyzer/lib/src/generated/bazel.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698