| Index: pkg/analysis_services/test/search/hierarchy_test.dart
|
| diff --git a/pkg/analysis_services/test/search/hierarchy_test.dart b/pkg/analysis_services/test/search/hierarchy_test.dart
|
| deleted file mode 100644
|
| index aea5f89447d3772756cd5f73a7f9c7553650484c..0000000000000000000000000000000000000000
|
| --- a/pkg/analysis_services/test/search/hierarchy_test.dart
|
| +++ /dev/null
|
| @@ -1,322 +0,0 @@
|
| -// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
|
| -// for details. All rights reserved. Use of this source code is governed by a
|
| -// BSD-style license that can be found in the LICENSE file.
|
| -
|
| -library test.services.src.search.hierarchy;
|
| -
|
| -import 'dart:async';
|
| -
|
| -import 'package:analysis_services/index/index.dart';
|
| -import 'package:analysis_services/index/local_memory_index.dart';
|
| -import 'package:analysis_services/search/hierarchy.dart';
|
| -import 'package:analysis_services/src/search/search_engine.dart';
|
| -import 'package:analysis_testing/abstract_single_unit.dart';
|
| -import 'package:analysis_testing/reflective_tests.dart';
|
| -import 'package:analyzer/src/generated/element.dart';
|
| -import 'package:unittest/unittest.dart';
|
| -
|
| -
|
| -main() {
|
| - groupSep = ' | ';
|
| - runReflectiveTests(HierarchyTest);
|
| -}
|
| -
|
| -
|
| -@ReflectiveTestCase()
|
| -class HierarchyTest extends AbstractSingleUnitTest {
|
| - Index index;
|
| - SearchEngineImpl searchEngine;
|
| -
|
| - void setUp() {
|
| - super.setUp();
|
| - index = createLocalMemoryIndex();
|
| - searchEngine = new SearchEngineImpl(index);
|
| - }
|
| -
|
| - void test_getClassMembers() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - A() {}
|
| - var ma1;
|
| - ma2() {}
|
| -}
|
| -class B extends A {
|
| - B() {}
|
| - B.named() {}
|
| - var mb1;
|
| - mb2() {}
|
| -}
|
| -''');
|
| - {
|
| - ClassElement classA = findElement('A');
|
| - List<Element> members = getClassMembers(classA);
|
| - expect(members.map((e) => e.name), unorderedEquals(['ma1', 'ma2']));
|
| - }
|
| - {
|
| - ClassElement classB = findElement('B');
|
| - List<Element> members = getClassMembers(classB);
|
| - expect(members.map((e) => e.name), unorderedEquals(['mb1', 'mb2']));
|
| - }
|
| - }
|
| -
|
| - Future test_getHierarchyMembers_constructors() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - A() {}
|
| -}
|
| -class B extends A {
|
| - B() {}
|
| -}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassMemberElement memberA = classA.constructors[0];
|
| - ClassMemberElement memberB = classB.constructors[0];
|
| - var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
|
| - expect(members, unorderedEquals([memberA]));
|
| - });
|
| - var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
|
| - expect(members, unorderedEquals([memberB]));
|
| - });
|
| - return Future.wait([futureA, futureB]);
|
| - }
|
| -
|
| - Future test_getHierarchyMembers_fields() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - int foo;
|
| -}
|
| -class B extends A {
|
| - get foo => null;
|
| -}
|
| -class C extends B {
|
| - set foo(x) {}
|
| -}
|
| -class D {
|
| - int foo;
|
| -}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassElement classC = findElement("C");
|
| - ClassElement classD = findElement("D");
|
| - ClassElement classE = findElement("E");
|
| - ClassMemberElement memberA = classA.fields[0];
|
| - ClassMemberElement memberB = classB.fields[0];
|
| - ClassMemberElement memberC = classC.fields[0];
|
| - ClassMemberElement memberD = classD.fields[0];
|
| - var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureC = getHierarchyMembers(searchEngine, memberC).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
|
| - expect(members, unorderedEquals([memberD]));
|
| - });
|
| - return Future.wait([futureA, futureB, futureC, futureD]);
|
| - }
|
| -
|
| - Future test_getHierarchyMembers_methods() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - foo() {}
|
| -}
|
| -class B extends A {
|
| - foo() {}
|
| -}
|
| -class C extends B {
|
| - foo() {}
|
| -}
|
| -class D {
|
| - foo() {}
|
| -}
|
| -class E extends D {
|
| - foo() {}
|
| -}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassElement classC = findElement("C");
|
| - ClassElement classD = findElement("D");
|
| - ClassElement classE = findElement("E");
|
| - ClassMemberElement memberA = classA.methods[0];
|
| - ClassMemberElement memberB = classB.methods[0];
|
| - ClassMemberElement memberC = classC.methods[0];
|
| - ClassMemberElement memberD = classD.methods[0];
|
| - ClassMemberElement memberE = classE.methods[0];
|
| - var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureC = getHierarchyMembers(searchEngine, memberC).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberC]));
|
| - });
|
| - var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
|
| - expect(members, unorderedEquals([memberD, memberE]));
|
| - });
|
| - var futureE = getHierarchyMembers(searchEngine, memberE).then((members) {
|
| - expect(members, unorderedEquals([memberD, memberE]));
|
| - });
|
| - return Future.wait([futureA, futureB, futureC, futureD, futureE]);
|
| - }
|
| -
|
| - Future test_getHierarchyMembers_withInterfaces() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - foo() {}
|
| -}
|
| -class B implements A {
|
| - foo() {}
|
| -}
|
| -abstract class C implements A {
|
| -}
|
| -class D extends C {
|
| - foo() {}
|
| -}
|
| -class E {
|
| - foo() {}
|
| -}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassElement classC = findElement("C");
|
| - ClassElement classD = findElement("D");
|
| - ClassElement classE = findElement("E");
|
| - ClassMemberElement memberA = classA.methods[0];
|
| - ClassMemberElement memberB = classB.methods[0];
|
| - ClassMemberElement memberD = classD.methods[0];
|
| - var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberD]));
|
| - });
|
| - var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberD]));
|
| - });
|
| - var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
|
| - expect(members, unorderedEquals([memberA, memberB, memberD]));
|
| - });
|
| - return Future.wait([futureA, futureB, futureD]);
|
| - }
|
| -
|
| - void test_getMembers() {
|
| - _indexTestUnit('''
|
| -class A {
|
| - A() {}
|
| - var ma1;
|
| - ma2() {}
|
| -}
|
| -class B extends A {
|
| - B() {}
|
| - B.named() {}
|
| - var mb1;
|
| - mb2() {}
|
| -}
|
| -''');
|
| - {
|
| - ClassElement classA = findElement('A');
|
| - List<Element> members = getMembers(classA);
|
| - expect(members.map((e) => e.name), unorderedEquals(['ma1', 'ma2', '==']));
|
| - }
|
| - {
|
| - ClassElement classB = findElement('B');
|
| - List<Element> members = getMembers(classB);
|
| - expect(
|
| - members.map((e) => e.name),
|
| - unorderedEquals(['mb1', 'mb2', 'ma1', 'ma2', '==']));
|
| - }
|
| - }
|
| -
|
| - Future test_getSubClasses() {
|
| - _indexTestUnit('''
|
| -class A {}
|
| -class B extends A {}
|
| -class C extends B {}
|
| -class D extends B implements A {}
|
| -class M {}
|
| -class E extends A with M {}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassElement classC = findElement("C");
|
| - ClassElement classD = findElement("D");
|
| - ClassElement classM = findElement("M");
|
| - ClassElement classE = findElement("E");
|
| - var futureA = getSubClasses(searchEngine, classA).then((subs) {
|
| - expect(subs, unorderedEquals([classB, classC, classD, classE]));
|
| - });
|
| - var futureB = getSubClasses(searchEngine, classB).then((subs) {
|
| - expect(subs, unorderedEquals([classC, classD]));
|
| - });
|
| - var futureC = getSubClasses(searchEngine, classC).then((subs) {
|
| - expect(subs, isEmpty);
|
| - });
|
| - var futureM = getSubClasses(searchEngine, classM).then((subs) {
|
| - expect(subs, unorderedEquals([classE]));
|
| - });
|
| - return Future.wait([futureA, futureB, futureC, futureM]);
|
| - }
|
| -
|
| - void test_getSuperClasses() {
|
| - _indexTestUnit('''
|
| -class A {}
|
| -class B extends A {}
|
| -class C extends B {}
|
| -class D extends B implements A {}
|
| -class M {}
|
| -class E extends A with M {}
|
| -class F implements A {}
|
| -''');
|
| - ClassElement classA = findElement("A");
|
| - ClassElement classB = findElement("B");
|
| - ClassElement classC = findElement("C");
|
| - ClassElement classD = findElement("D");
|
| - ClassElement classE = findElement("E");
|
| - ClassElement classF = findElement("F");
|
| - ClassElement objectElement = classA.supertype.element;
|
| - // Object
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(objectElement);
|
| - expect(supers, isEmpty);
|
| - }
|
| - // A
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classA);
|
| - expect(supers, unorderedEquals([objectElement]));
|
| - }
|
| - // B
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classB);
|
| - expect(supers, unorderedEquals([objectElement, classA]));
|
| - }
|
| - // C
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classC);
|
| - expect(supers, unorderedEquals([objectElement, classA, classB]));
|
| - }
|
| - // D
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classD);
|
| - expect(supers, unorderedEquals([objectElement, classA, classB]));
|
| - }
|
| - // E
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classE);
|
| - expect(supers, unorderedEquals([objectElement, classA]));
|
| - }
|
| - // F
|
| - {
|
| - Set<ClassElement> supers = getSuperClasses(classF);
|
| - expect(supers, unorderedEquals([objectElement, classA]));
|
| - }
|
| - }
|
| -
|
| - void _indexTestUnit(String code) {
|
| - resolveTestUnit(code);
|
| - index.indexUnit(context, testUnit);
|
| - }
|
| -}
|
|
|