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

Unified Diff: pkg/analysis_server/test/services/search/hierarchy_test.dart

Issue 2176173004: Issue 26926. Don't search hierarchy for static class members. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 5 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/analysis_server/test/search/element_references_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/test/services/search/hierarchy_test.dart
diff --git a/pkg/analysis_server/test/services/search/hierarchy_test.dart b/pkg/analysis_server/test/services/search/hierarchy_test.dart
index 027c23759f4fd71b49e4440ac82858d8daaf9582..802f351b8ad6acb193a2200431af1ca783310b5d 100644
--- a/pkg/analysis_server/test/services/search/hierarchy_test.dart
+++ b/pkg/analysis_server/test/services/search/hierarchy_test.dart
@@ -118,6 +118,41 @@ class D {
return Future.wait([futureA, futureB, futureC, futureD]);
}
+ Future test_getHierarchyMembers_fields_static() async {
+ _indexTestUnit('''
+class A {
+ static int foo;
+}
+class B extends A {
+ static get foo => null;
+}
+class C extends B {
+ static set foo(x) {}
+}
+''');
+ ClassElement classA = findElement('A');
+ ClassElement classB = findElement('B');
+ ClassElement classC = findElement('C');
+ ClassMemberElement memberA = classA.fields[0];
+ ClassMemberElement memberB = classB.fields[0];
+ ClassMemberElement memberC = classC.fields[0];
+ {
+ Set<ClassMemberElement> members =
+ await getHierarchyMembers(searchEngine, memberA);
+ expect(members, unorderedEquals([memberA]));
+ }
+ {
+ Set<ClassMemberElement> members =
+ await getHierarchyMembers(searchEngine, memberB);
+ expect(members, unorderedEquals([memberB]));
+ }
+ {
+ Set<ClassMemberElement> members =
+ await getHierarchyMembers(searchEngine, memberC);
+ expect(members, unorderedEquals([memberC]));
+ }
+ }
+
Future test_getHierarchyMembers_methods() {
_indexTestUnit('''
class A {
@@ -164,6 +199,31 @@ class E extends D {
return Future.wait([futureA, futureB, futureC, futureD, futureE]);
}
+ Future test_getHierarchyMembers_methods_static() async {
+ _indexTestUnit('''
+class A {
+ static foo() {}
+}
+class B extends A {
+ static foo() {}
+}
+''');
+ ClassElement classA = findElement('A');
+ ClassElement classB = findElement('B');
+ ClassMemberElement memberA = classA.methods[0];
+ ClassMemberElement memberB = classB.methods[0];
+ {
+ Set<ClassMemberElement> members =
+ await getHierarchyMembers(searchEngine, memberA);
+ expect(members, unorderedEquals([memberA]));
+ }
+ {
+ Set<ClassMemberElement> members =
+ await getHierarchyMembers(searchEngine, memberB);
+ expect(members, unorderedEquals([memberB]));
+ }
+ }
+
Future test_getHierarchyMembers_withInterfaces() {
_indexTestUnit('''
class A {
« no previous file with comments | « pkg/analysis_server/test/search/element_references_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698