| Index: pkg/analysis_services/test/index/dart_index_contributor_test.dart
|
| diff --git a/pkg/analysis_services/test/index/dart_index_contributor_test.dart b/pkg/analysis_services/test/index/dart_index_contributor_test.dart
|
| index 3892d5d15eaa4cf0308f5741dff78d633f3c0353..b5087b609d9cfe3266e1e943c522f55e1b1dda64 100644
|
| --- a/pkg/analysis_services/test/index/dart_index_contributor_test.dart
|
| +++ b/pkg/analysis_services/test/index/dart_index_contributor_test.dart
|
| @@ -7,16 +7,15 @@ library test.services.src.index.dart_index_contributor;
|
| import 'package:analysis_services/index/index.dart';
|
| import 'package:analysis_services/index/index_store.dart';
|
| import 'package:analysis_services/src/index/index_contributor.dart';
|
| -import 'package:analysis_testing/abstract_context.dart';
|
| import 'package:analysis_testing/reflective_tests.dart';
|
| import 'package:analyzer/src/generated/ast.dart';
|
| import 'package:analyzer/src/generated/element.dart';
|
| -import 'package:analyzer/src/generated/error.dart';
|
| -import 'package:analyzer/src/generated/java_engine.dart';
|
| import 'package:analyzer/src/generated/source.dart';
|
| import 'package:typed_mock/typed_mock.dart';
|
| import 'package:unittest/unittest.dart';
|
|
|
| +import 'abstract_single_unit.dart';
|
| +
|
|
|
| main() {
|
| groupSep = ' | ';
|
| @@ -30,7 +29,10 @@ main() {
|
| * Returns `true` if the [actual] location the same properties as [expected].
|
| */
|
| bool _equalsLocation(Location actual, ExpectedLocation expected) {
|
| - return _equalsLocationProperties(actual, expected.element, expected.offset,
|
| + return _equalsLocationProperties(
|
| + actual,
|
| + expected.element,
|
| + expected.offset,
|
| expected.length);
|
| }
|
|
|
| @@ -40,7 +42,8 @@ bool _equalsLocation(Location actual, ExpectedLocation expected) {
|
| */
|
| bool _equalsLocationProperties(Location actual, Element expectedElement,
|
| int expectedOffset, int expectedLength) {
|
| - return expectedElement == actual.element && expectedOffset == actual.offset &&
|
| + return expectedElement == actual.element &&
|
| + expectedOffset == actual.offset &&
|
| expectedLength == actual.length;
|
| }
|
|
|
| @@ -48,53 +51,29 @@ bool _equalsLocationProperties(Location actual, Element expectedElement,
|
| bool _equalsRecordedRelation(RecordedRelation recordedRelation,
|
| Element expectedElement, Relationship expectedRelationship,
|
| ExpectedLocation expectedLocation) {
|
| - return expectedElement == recordedRelation.element && expectedRelationship ==
|
| - recordedRelation.relationship && (expectedLocation == null || _equalsLocation(
|
| - recordedRelation.location, expectedLocation));
|
| + return expectedElement == recordedRelation.element &&
|
| + expectedRelationship == recordedRelation.relationship &&
|
| + (expectedLocation == null ||
|
| + _equalsLocation(recordedRelation.location, expectedLocation));
|
| }
|
|
|
|
|
| -int _getLeadingIdentifierLength(String search) {
|
| - int length = 0;
|
| - while (length < search.length) {
|
| - int c = search.codeUnitAt(length);
|
| - if (c >= 'a'.codeUnitAt(0) && c <= 'z'.codeUnitAt(0)) {
|
| - length++;
|
| - continue;
|
| - }
|
| - if (c >= 'A'.codeUnitAt(0) && c <= 'Z'.codeUnitAt(0)) {
|
| - length++;
|
| - continue;
|
| - }
|
| - if (c >= '0'.codeUnitAt(0) && c <= '9'.codeUnitAt(0)) {
|
| - length++;
|
| - continue;
|
| - }
|
| - break;
|
| - }
|
| - return length;
|
| -}
|
| -
|
| @ReflectiveTestCase()
|
| -class DartUnitContributorTest extends AbstractContextTest {
|
| +class DartUnitContributorTest extends AbstractSingleUnitTest {
|
| IndexStore store = new MockIndexStore();
|
| List<RecordedRelation> recordedRelations = <RecordedRelation>[];
|
|
|
| - bool verifyNoTestUnitErrors = true;
|
| -
|
| - String testCode;
|
| - Source testSource;
|
| - CompilationUnit testUnit;
|
| - CompilationUnitElement testUnitElement;
|
| - LibraryElement testLibraryElement;
|
| -
|
| void setUp() {
|
| super.setUp();
|
| when(store.aboutToIndexDart(context, anyObject)).thenReturn(true);
|
| - when(store.recordRelationship(anyObject, anyObject, anyObject)).thenInvoke(
|
| - (Element element, Relationship relationship, Location location) {
|
| - recordedRelations.add(new RecordedRelation(element, relationship,
|
| - location));
|
| + when(
|
| + store.recordRelationship(
|
| + anyObject,
|
| + anyObject,
|
| + anyObject)).thenInvoke(
|
| + (Element element, Relationship relationship, Location location) {
|
| + recordedRelations.add(
|
| + new RecordedRelation(element, relationship, location));
|
| });
|
| }
|
|
|
| @@ -107,21 +86,23 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - FieldElement fieldElement = _findElement("myField");
|
| + Element mainElement = findElement("main");
|
| + FieldElement fieldElement = findElement("myField");
|
| PropertyAccessorElement getterElement = fieldElement.getter;
|
| // verify
|
| - _assertRecordedRelation(getterElement,
|
| - IndexConstants.IS_REFERENCED_BY_UNQUALIFIED, _expectedLocation(mainElement,
|
| - 'myField);'));
|
| + _assertRecordedRelation(
|
| + getterElement,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _expectedLocation(mainElement, 'myField);'));
|
| }
|
|
|
| void test_definesClass() {
|
| _indexTestUnit('class A {}');
|
| // prepare elements
|
| - ClassElement classElement = _findElement("A");
|
| + ClassElement classElement = findElement("A");
|
| // verify
|
| - _assertDefinesTopLevelElement(IndexConstants.DEFINES_CLASS,
|
| + _assertDefinesTopLevelElement(
|
| + IndexConstants.DEFINES_CLASS,
|
| _expectedLocation(classElement, 'A {}'));
|
| }
|
|
|
| @@ -130,27 +111,30 @@ class A {
|
| class Mix {}
|
| class MyClass = Object with Mix;''');
|
| // prepare elements
|
| - Element classElement = _findElement("MyClass");
|
| + Element classElement = findElement("MyClass");
|
| // verify
|
| - _assertDefinesTopLevelElement(IndexConstants.DEFINES_CLASS_ALIAS,
|
| + _assertDefinesTopLevelElement(
|
| + IndexConstants.DEFINES_CLASS_ALIAS,
|
| _expectedLocation(classElement, 'MyClass ='));
|
| }
|
|
|
| void test_definesFunction() {
|
| _indexTestUnit('myFunction() {}');
|
| // prepare elements
|
| - FunctionElement functionElement = _findElement("myFunction");
|
| + FunctionElement functionElement = findElement("myFunction");
|
| // verify
|
| - _assertDefinesTopLevelElement(IndexConstants.DEFINES_FUNCTION,
|
| + _assertDefinesTopLevelElement(
|
| + IndexConstants.DEFINES_FUNCTION,
|
| _expectedLocation(functionElement, 'myFunction() {}'));
|
| }
|
|
|
| void test_definesFunctionType() {
|
| _indexTestUnit('typedef MyFunction(int p);');
|
| // prepare elements
|
| - FunctionTypeAliasElement typeAliasElement = _findElement("MyFunction");
|
| + FunctionTypeAliasElement typeAliasElement = findElement("MyFunction");
|
| // verify
|
| - _assertDefinesTopLevelElement(IndexConstants.DEFINES_FUNCTION_TYPE,
|
| + _assertDefinesTopLevelElement(
|
| + IndexConstants.DEFINES_FUNCTION_TYPE,
|
| _expectedLocation(typeAliasElement, 'MyFunction(int p);'));
|
| }
|
|
|
| @@ -158,9 +142,10 @@ class MyClass = Object with Mix;''');
|
| void test_definesVariable() {
|
| _indexTestUnit('var myVar = 42;');
|
| // prepare elements
|
| - VariableElement varElement = _findElement("myVar");
|
| + VariableElement varElement = findElement("myVar");
|
| // verify
|
| - _assertDefinesTopLevelElement(IndexConstants.DEFINES_VARIABLE,
|
| + _assertDefinesTopLevelElement(
|
| + IndexConstants.DEFINES_VARIABLE,
|
| _expectedLocation(varElement, 'myVar = 42;'));
|
| }
|
|
|
| @@ -171,10 +156,12 @@ main() {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - VariableElement variableElement = _findElement("v");
|
| + Element mainElement = findElement("main");
|
| + VariableElement variableElement = findElement("v");
|
| // verify
|
| - _assertNoRecordedRelation(variableElement, IndexConstants.IS_READ_BY,
|
| + _assertNoRecordedRelation(
|
| + variableElement,
|
| + IndexConstants.IS_READ_BY,
|
| _expectedLocation(mainElement, 'v in []'));
|
| }
|
|
|
| @@ -185,15 +172,19 @@ class A {
|
| A.foo() {}
|
| }''');
|
| // prepare elements
|
| - ClassElement classA = _findElement("A");
|
| - ConstructorElement consA = _findNodeElementAtString("A()", (node) => node is
|
| - ConstructorDeclaration);
|
| - ConstructorElement consA_foo = _findNodeElementAtString("A.foo()", (node) =>
|
| - node is ConstructorDeclaration);
|
| + ClassElement classA = findElement("A");
|
| + ConstructorElement consA =
|
| + findNodeElementAtString("A()", (node) => node is ConstructorDeclaration);
|
| + ConstructorElement consA_foo =
|
| + findNodeElementAtString("A.foo()", (node) => node is ConstructorDeclaration);
|
| // verify
|
| - _assertRecordedRelation(consA, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + consA,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(classA, '() {}'));
|
| - _assertRecordedRelation(consA_foo, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + consA_foo,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(classA, '.foo() {}', '.foo'.length));
|
| }
|
|
|
| @@ -203,10 +194,12 @@ class A {
|
| m() {}
|
| }''');
|
| // prepare elements
|
| - Element methodElement = _findElement("m");
|
| + Element methodElement = findElement("m");
|
| Element nameElement = new NameElement("m");
|
| // verify
|
| - _assertRecordedRelation(nameElement, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(methodElement, 'm() {}'));
|
| }
|
|
|
| @@ -217,10 +210,12 @@ class A {
|
| operator +(o) {}
|
| }''');
|
| // prepare elements
|
| - Element methodElement = _findElement("+");
|
| + Element methodElement = findElement("+");
|
| Element nameElement = new NameElement("+");
|
| // verify
|
| - _assertRecordedRelation(nameElement, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(methodElement, '+(o) {}', 1));
|
| }
|
|
|
| @@ -230,10 +225,12 @@ class A {} // 1
|
| class B extends A {} // 2
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| - ClassElement classElementB = _findElement("B");
|
| + ClassElement classElementA = findElement("A");
|
| + ClassElement classElementB = findElement("B");
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_EXTENDED_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_EXTENDED_BY,
|
| _expectedLocation(classElementB, 'A {} // 2'));
|
| }
|
|
|
| @@ -242,10 +239,12 @@ class B extends A {} // 2
|
| class A {} // 1
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| + ClassElement classElementA = findElement("A");
|
| ClassElement classElementObject = classElementA.supertype.element;
|
| // verify
|
| - _assertRecordedRelation(classElementObject, IndexConstants.IS_EXTENDED_BY,
|
| + _assertRecordedRelation(
|
| + classElementObject,
|
| + IndexConstants.IS_EXTENDED_BY,
|
| _expectedLocation(classElementA, 'A {}', 0));
|
| }
|
|
|
| @@ -256,10 +255,12 @@ class B {} // 2
|
| class C = A with B; // 3
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| - ClassElement classElementC = _findElement("C");
|
| + ClassElement classElementA = findElement("A");
|
| + ClassElement classElementC = findElement("C");
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_EXTENDED_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_EXTENDED_BY,
|
| _expectedLocation(classElementC, 'A with'));
|
| }
|
|
|
| @@ -269,10 +270,12 @@ class A {} // 1
|
| class B implements A {} // 2
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| - ClassElement classElementB = _findElement("B");
|
| + ClassElement classElementA = findElement("A");
|
| + ClassElement classElementB = findElement("B");
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_IMPLEMENTED_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_IMPLEMENTED_BY,
|
| _expectedLocation(classElementB, 'A {} // 2'));
|
| }
|
|
|
| @@ -283,10 +286,12 @@ class B {} // 2
|
| class C = Object with A implements B; // 3
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementB = _findElement("B");
|
| - ClassElement classElementC = _findElement("C");
|
| + ClassElement classElementB = findElement("B");
|
| + ClassElement classElementC = findElement("C");
|
| // verify
|
| - _assertRecordedRelation(classElementB, IndexConstants.IS_IMPLEMENTED_BY,
|
| + _assertRecordedRelation(
|
| + classElementB,
|
| + IndexConstants.IS_IMPLEMENTED_BY,
|
| _expectedLocation(classElementC, 'B; // 3'));
|
| }
|
|
|
| @@ -300,13 +305,14 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - FieldElement fieldElement = _findElement("field");
|
| + Element mainElement = findElement("main");
|
| + FieldElement fieldElement = findElement("field");
|
| PropertyAccessorElement getterElement = fieldElement.getter;
|
| // verify
|
| - _assertRecordedRelation(getterElement,
|
| - IndexConstants.IS_INVOKED_BY_QUALIFIED, _expectedLocation(mainElement,
|
| - 'field();'));
|
| + _assertRecordedRelation(
|
| + getterElement,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _expectedLocation(mainElement, 'field();'));
|
| }
|
|
|
|
|
| @@ -319,14 +325,18 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element methodElement = _findElement("foo");
|
| + Element mainElement = findElement("main");
|
| + Element methodElement = findElement("foo");
|
| // verify
|
| var location = _expectedLocation(mainElement, 'foo();');
|
| - _assertRecordedRelation(methodElement,
|
| - IndexConstants.IS_INVOKED_BY_QUALIFIED, location);
|
| - _assertNoRecordedRelation(methodElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED, location);
|
| + _assertRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + location);
|
| + _assertNoRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + location);
|
| }
|
|
|
| void test_isInvokedByQualified_MethodElement_propagatedType() {
|
| @@ -340,12 +350,13 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element methodElement = _findElement("foo");
|
| + Element mainElement = findElement("main");
|
| + Element methodElement = findElement("foo");
|
| // verify
|
| - _assertRecordedRelation(methodElement,
|
| - IndexConstants.IS_INVOKED_BY_QUALIFIED, _expectedLocation(mainElement,
|
| - 'foo();'));
|
| + _assertRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _expectedLocation(mainElement, 'foo();'));
|
| }
|
|
|
| void test_isInvokedByUnqualified_MethodElement() {
|
| @@ -357,12 +368,13 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element methodElement = _findElement("foo");
|
| + Element mainElement = findElement("main");
|
| + Element methodElement = findElement("foo");
|
| // verify
|
| - _assertRecordedRelation(methodElement,
|
| - IndexConstants.IS_INVOKED_BY_UNQUALIFIED, _expectedLocation(mainElement,
|
| - 'foo();'));
|
| + _assertRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_INVOKED_BY_UNQUALIFIED,
|
| + _expectedLocation(mainElement, 'foo();'));
|
| }
|
|
|
| void test_isInvokedBy_FunctionElement() {
|
| @@ -372,10 +384,12 @@ main() {
|
| foo();
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - FunctionElement functionElement = _findElement("foo");
|
| + Element mainElement = findElement("main");
|
| + FunctionElement functionElement = findElement("foo");
|
| // verify
|
| - _assertRecordedRelation(functionElement, IndexConstants.IS_INVOKED_BY,
|
| + _assertRecordedRelation(
|
| + functionElement,
|
| + IndexConstants.IS_INVOKED_BY,
|
| _expectedLocation(mainElement, 'foo();'));
|
| }
|
|
|
| @@ -386,10 +400,12 @@ main() {
|
| v();
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element element = _findElement("v");
|
| + Element mainElement = findElement("main");
|
| + Element element = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY,
|
| _expectedLocation(mainElement, 'v();'));
|
| }
|
|
|
| @@ -399,10 +415,12 @@ main(p()) {
|
| p();
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element element = _findElement("p");
|
| + Element mainElement = findElement("main");
|
| + Element element = findElement("p");
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY,
|
| _expectedLocation(mainElement, 'p();'));
|
| }
|
|
|
| @@ -412,10 +430,12 @@ class A {} // 1
|
| class B extends Object with A {} // 2
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| - ClassElement classElementB = _findElement("B");
|
| + ClassElement classElementA = findElement("A");
|
| + ClassElement classElementB = findElement("B");
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_MIXED_IN_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_MIXED_IN_BY,
|
| _expectedLocation(classElementB, 'A {} // 2'));
|
| }
|
|
|
| @@ -425,10 +445,12 @@ class A {} // 1
|
| class B = Object with A; // 2
|
| ''');
|
| // prepare elements
|
| - ClassElement classElementA = _findElement("A");
|
| - ClassElement classElementB = _findElement("B");
|
| + ClassElement classElementA = findElement("A");
|
| + ClassElement classElementB = findElement("B");
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_MIXED_IN_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_MIXED_IN_BY,
|
| _expectedLocation(classElementB, 'A; // 2'));
|
| }
|
|
|
| @@ -439,10 +461,12 @@ main(var p) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element parameterElement = _findElement("p");
|
| + Element mainElement = findElement("main");
|
| + Element parameterElement = findElement("p");
|
| // verify
|
| - _assertRecordedRelation(parameterElement, IndexConstants.IS_READ_BY,
|
| + _assertRecordedRelation(
|
| + parameterElement,
|
| + IndexConstants.IS_READ_BY,
|
| _expectedLocation(mainElement, 'p);'));
|
| }
|
|
|
| @@ -454,10 +478,12 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element variableElement = _findElement("v");
|
| + Element mainElement = findElement("main");
|
| + Element variableElement = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(variableElement, IndexConstants.IS_READ_BY,
|
| + _assertRecordedRelation(
|
| + variableElement,
|
| + IndexConstants.IS_READ_BY,
|
| _expectedLocation(mainElement, 'v);'));
|
| }
|
|
|
| @@ -468,10 +494,12 @@ main(int p) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element parameterElement = _findElement("p");
|
| + Element mainElement = findElement("main");
|
| + Element parameterElement = findElement("p");
|
| // verify
|
| - _assertRecordedRelation(parameterElement, IndexConstants.IS_READ_WRITTEN_BY,
|
| + _assertRecordedRelation(
|
| + parameterElement,
|
| + IndexConstants.IS_READ_WRITTEN_BY,
|
| _expectedLocation(mainElement, 'p += 1'));
|
| }
|
|
|
| @@ -483,10 +511,12 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - Element variableElement = _findElement("v");
|
| + Element mainElement = findElement("main");
|
| + Element variableElement = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(variableElement, IndexConstants.IS_READ_WRITTEN_BY,
|
| + _assertRecordedRelation(
|
| + variableElement,
|
| + IndexConstants.IS_READ_WRITTEN_BY,
|
| _expectedLocation(mainElement, 'v += 1'));
|
| }
|
|
|
| @@ -500,12 +530,13 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| Element nameElement = new NameElement('field');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, 'field);'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, 'field);'));
|
| }
|
|
|
| void test_isReferencedByQualifiedResolved_NameElement_method() {
|
| @@ -518,12 +549,13 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| Element nameElement = new NameElement('method');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, 'method();'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, 'method();'));
|
| }
|
|
|
| void test_isReferencedByQualifiedResolved_NameElement_operator() {
|
| @@ -546,34 +578,42 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // binary
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '+ 5', '+'.length));
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '+= 5', '+='.length));
|
| - _assertRecordedRelation(new NameElement('=='),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '== 5', '=='.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '+ 5', '+'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '+= 5', '+='.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('=='),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '== 5', '=='.length));
|
| // prefix
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '++a', '++'.length));
|
| - _assertRecordedRelation(new NameElement('-'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '--a', '--'.length));
|
| - _assertRecordedRelation(new NameElement('~'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '~a', '~'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '++a', '++'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('-'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '--a', '--'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('~'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '~a', '~'.length));
|
| // postfix
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '++;', '++'.length));
|
| - _assertRecordedRelation(new NameElement('-'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED, _expectedLocation(
|
| - mainElement, '--;', '--'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '++;', '++'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('-'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_RESOLVED,
|
| + _expectedLocation(mainElement, '--;', '--'.length));
|
| }
|
|
|
| void test_isReferencedByQualifiedUnresolved_NameElement_field() {
|
| @@ -586,15 +626,18 @@ main(var a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| - FieldElement fieldElement = _findElement('field');
|
| + Element mainElement = findElement('main');
|
| + FieldElement fieldElement = findElement('field');
|
| Element nameElement = new NameElement('field');
|
| // verify
|
| - _assertRecordedRelation(nameElement, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(fieldElement, 'field;'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, 'field);'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'field);'));
|
| }
|
|
|
| void test_isReferencedByQualifiedUnresolved_NameElement_method() {
|
| @@ -607,15 +650,18 @@ main(var a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| - MethodElement methodElement = _findElement('method');
|
| + Element mainElement = findElement('main');
|
| + MethodElement methodElement = findElement('method');
|
| Element nameElement = new NameElement('method');
|
| // verify
|
| - _assertRecordedRelation(nameElement, IndexConstants.IS_DEFINED_BY,
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_DEFINED_BY,
|
| _expectedLocation(methodElement, 'method() {}'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, 'method();'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'method();'));
|
| }
|
|
|
| void test_isReferencedByQualifiedUnresolved_NameElement_operator() {
|
| @@ -638,34 +684,42 @@ main(a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // binary
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '+ 5', '+'.length));
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '+= 5', '+='.length));
|
| - _assertRecordedRelation(new NameElement('=='),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '== 5', '=='.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '+ 5', '+'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '+= 5', '+='.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('=='),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '== 5', '=='.length));
|
| // prefix
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '++a', '++'.length));
|
| - _assertRecordedRelation(new NameElement('-'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '--a', '--'.length));
|
| - _assertRecordedRelation(new NameElement('~'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '~a', '~'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '++a', '++'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('-'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '--a', '--'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('~'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '~a', '~'.length));
|
| // postfix
|
| - _assertRecordedRelation(new NameElement('+'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '++;', '++'.length));
|
| - _assertRecordedRelation(new NameElement('-'),
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED, _expectedLocation(
|
| - mainElement, '--;', '--'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('+'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '++;', '++'.length));
|
| + _assertRecordedRelation(
|
| + new NameElement('-'),
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED_UNRESOLVED,
|
| + _expectedLocation(mainElement, '--;', '--'.length));
|
| }
|
|
|
| void test_isReferencedByQualified_ConstructorElement() {
|
| @@ -685,27 +739,37 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| var isConstructor = (node) => node is ConstructorDeclaration;
|
| - ConstructorElement consA = _findNodeElementAtString("A()", isConstructor);
|
| - ConstructorElement consA_foo = _findNodeElementAtString("A.foo()",
|
| - isConstructor);
|
| - ConstructorElement consB = _findNodeElementAtString("B()", isConstructor);
|
| - ConstructorElement consB_foo = _findNodeElementAtString("B.foo()",
|
| - isConstructor);
|
| - ConstructorElement consB_bar = _findNodeElementAtString("B.bar()",
|
| - isConstructor);
|
| + ConstructorElement consA = findNodeElementAtString("A()", isConstructor);
|
| + ConstructorElement consA_foo =
|
| + findNodeElementAtString("A.foo()", isConstructor);
|
| + ConstructorElement consB = findNodeElementAtString("B()", isConstructor);
|
| + ConstructorElement consB_foo =
|
| + findNodeElementAtString("B.foo()", isConstructor);
|
| + ConstructorElement consB_bar =
|
| + findNodeElementAtString("B.bar()", isConstructor);
|
| // A()
|
| - _assertRecordedRelation(consA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(consB, '(); // marker-1', 0));
|
| - _assertRecordedRelation(consA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, '(); // marker-main-1', 0));
|
| // A.foo()
|
| - _assertRecordedRelation(consA_foo, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA_foo,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(consB_foo, '.foo(); // marker-2', '.foo'.length));
|
| - _assertRecordedRelation(consA_foo, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA_foo,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(consB_bar, '.foo; // marker-3', '.foo'.length));
|
| - _assertRecordedRelation(consA_foo, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA_foo,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, '.foo(); // marker-main-2', '.foo'.length));
|
| }
|
|
|
| @@ -723,15 +787,19 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| var isConstructor = (node) => node is ConstructorDeclaration;
|
| - ConstructorElement consA = _findNodeElementAtString("A()", isConstructor);
|
| - ConstructorElement consA_named = _findNodeElementAtString("A.named()",
|
| - isConstructor);
|
| + ConstructorElement consA = findNodeElementAtString("A()", isConstructor);
|
| + ConstructorElement consA_named =
|
| + findNodeElementAtString("A.named()", isConstructor);
|
| // verify
|
| - _assertRecordedRelation(consA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, '(); // marker-main-1', 0));
|
| - _assertRecordedRelation(consA_named, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + consA_named,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, '.named(); // marker-main-2', '.named'.length));
|
| }
|
|
|
| @@ -745,13 +813,14 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| - FieldElement fieldElement = _findElement('field');
|
| + Element mainElement = findElement('main');
|
| + FieldElement fieldElement = findElement('field');
|
| PropertyAccessorElement setterElement = fieldElement.setter;
|
| // verify
|
| - _assertRecordedRelation(setterElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED, _expectedLocation(mainElement,
|
| - 'field = 1'));
|
| + _assertRecordedRelation(
|
| + setterElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _expectedLocation(mainElement, 'field = 1'));
|
| }
|
|
|
| void test_isReferencedByQualified_MethodElement() {
|
| @@ -764,12 +833,13 @@ class A {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element fooElement = _findElement('foo');
|
| - Element mainElement = _findElement('main');
|
| + Element fooElement = findElement('foo');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(fooElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED, _expectedLocation(mainElement,
|
| - 'foo);'));
|
| + _assertRecordedRelation(
|
| + fooElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _expectedLocation(mainElement, 'foo);'));
|
| }
|
|
|
| void test_isReferencedByQualified_MethodElement_operator_binary() {
|
| @@ -785,16 +855,24 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element element = _findElement('+');
|
| - Element mainElement = _findElement('main');
|
| + Element element = findElement('+');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '+ 1', "+".length));
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '+= 2', "+=".length));
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '++a;', "++".length));
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '++;', "++".length));
|
| }
|
|
|
| @@ -810,15 +888,18 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - MethodElement readElement = _findElement("[]");
|
| - MethodElement writeElement = _findElement("[]=");
|
| - Element mainElement = _findElement('main');
|
| + MethodElement readElement = findElement("[]");
|
| + MethodElement writeElement = findElement("[]=");
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(readElement, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + readElement,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '[0]', "[".length));
|
| - _assertRecordedRelation(writeElement,
|
| - IndexConstants.IS_INVOKED_BY_QUALIFIED, _expectedLocation(mainElement, '[1] =',
|
| - "[".length));
|
| + _assertRecordedRelation(
|
| + writeElement,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _expectedLocation(mainElement, '[1] =', "[".length));
|
| }
|
|
|
| void test_isReferencedByQualified_MethodElement_operator_prefix() {
|
| @@ -831,10 +912,12 @@ main(A a) {
|
| }
|
| ''');
|
| // prepare elements
|
| - MethodElement element = _findElement("~");
|
| - Element mainElement = _findElement('main');
|
| + MethodElement element = findElement("~");
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, '~a', "~".length));
|
| }
|
|
|
| @@ -848,10 +931,12 @@ class A {
|
| }
|
| ''');
|
| // prepare elements
|
| - PropertyAccessorElement element = _findNodeElementAtString('foo =>');
|
| - Element mainElement = _findElement('main');
|
| + PropertyAccessorElement element = findNodeElementAtString('foo =>');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, 'foo);'));
|
| _assertNoRecordedRelation(element, IndexConstants.IS_REFERENCED_BY, null);
|
| }
|
| @@ -866,10 +951,12 @@ class A {
|
| }
|
| ''');
|
| // prepare elements
|
| - PropertyAccessorElement element = _findNodeElementAtString('foo(x)');
|
| - Element mainElement = _findElement('main');
|
| + PropertyAccessorElement element = findNodeElementAtString('foo(x)');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, 'foo = 42;'));
|
| _assertNoRecordedRelation(element, IndexConstants.IS_REFERENCED_BY, null);
|
| }
|
| @@ -887,7 +974,7 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| ImportElement importElement = testLibraryElement.imports[0];
|
| CompilationUnitElement impUnit =
|
| importElement.importedLibrary.definingCompilationUnit;
|
| @@ -895,9 +982,13 @@ main() {
|
| PropertyAccessorElement getter = myVar.getter;
|
| PropertyAccessorElement setter = myVar.setter;
|
| // verify
|
| - _assertRecordedRelation(setter, IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + setter,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, 'myVar = 1'));
|
| - _assertRecordedRelation(getter, IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _assertRecordedRelation(
|
| + getter,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| _expectedLocation(mainElement, 'myVar);'));
|
| }
|
|
|
| @@ -911,14 +1002,18 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - FieldElement fieldElement = _findElement("field");
|
| + Element mainElement = findElement("main");
|
| + FieldElement fieldElement = findElement("field");
|
| PropertyAccessorElement getter = fieldElement.getter;
|
| PropertyAccessorElement setter = fieldElement.setter;
|
| // verify
|
| - _assertRecordedRelation(setter, IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _assertRecordedRelation(
|
| + setter,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| _expectedLocation(mainElement, 'field = 5'));
|
| - _assertRecordedRelation(getter, IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _assertRecordedRelation(
|
| + getter,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| _expectedLocation(mainElement, 'field);'));
|
| }
|
|
|
| @@ -931,13 +1026,16 @@ class A {
|
| }
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - MethodElement methodElement = _findElement("method");
|
| + Element mainElement = findElement("main");
|
| + MethodElement methodElement = findElement("method");
|
| // verify
|
| - _assertRecordedRelation(methodElement,
|
| - IndexConstants.IS_REFERENCED_BY_UNQUALIFIED, _expectedLocation(mainElement,
|
| - 'method);'));
|
| - _assertNoRecordedRelation(methodElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _expectedLocation(mainElement, 'method);'));
|
| + _assertNoRecordedRelation(
|
| + methodElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| null);
|
| }
|
|
|
| @@ -949,15 +1047,17 @@ main() {
|
| print(topVariable);
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - TopLevelVariableElement variableElement = _findElement("topVariable");
|
| + Element mainElement = findElement("main");
|
| + TopLevelVariableElement variableElement = findElement("topVariable");
|
| // verify
|
| - _assertRecordedRelation(variableElement.setter,
|
| - IndexConstants.IS_REFERENCED_BY_UNQUALIFIED, _expectedLocation(mainElement,
|
| - 'topVariable = 5'));
|
| - _assertRecordedRelation(variableElement.getter,
|
| - IndexConstants.IS_REFERENCED_BY_UNQUALIFIED, _expectedLocation(mainElement,
|
| - 'topVariable);'));
|
| + _assertRecordedRelation(
|
| + variableElement.setter,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _expectedLocation(mainElement, 'topVariable = 5'));
|
| + _assertRecordedRelation(
|
| + variableElement.getter,
|
| + IndexConstants.IS_REFERENCED_BY_UNQUALIFIED,
|
| + _expectedLocation(mainElement, 'topVariable);'));
|
| }
|
|
|
| void test_isReferencedBy_ClassElement() {
|
| @@ -973,20 +1073,30 @@ main(A p) {
|
| }
|
| ''');
|
| // prepare elements
|
| - ClassElement aElement = _findElement("A");
|
| - Element mainElement = _findElement("main");
|
| - ParameterElement pElement = _findElement("p");
|
| - VariableElement vElement = _findElement("v");
|
| + ClassElement aElement = findElement("A");
|
| + Element mainElement = findElement("main");
|
| + ParameterElement pElement = findElement("p");
|
| + VariableElement vElement = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(pElement, 'A p) {'));
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(vElement, 'A v;'));
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'A(); // 2'));
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'A.field = 1;'));
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'A.field); // 3'));
|
| }
|
|
|
| @@ -999,13 +1109,17 @@ main(B p) {
|
| }
|
| ''');
|
| // prepare elements
|
| - ClassElement bElement = _findElement("B");
|
| - ParameterElement pElement = _findElement("p");
|
| - VariableElement vElement = _findElement("v");
|
| + ClassElement bElement = findElement("B");
|
| + ParameterElement pElement = findElement("p");
|
| + VariableElement vElement = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(bElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + bElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(pElement, 'B p) {'));
|
| - _assertRecordedRelation(bElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + bElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(vElement, 'B v;'));
|
| }
|
|
|
| @@ -1018,7 +1132,9 @@ part 'my_unit.dart';
|
| // prepare elements
|
| CompilationUnitElement myUnitElement = testLibraryElement.parts[0];
|
| // verify
|
| - _assertRecordedRelation(myUnitElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + myUnitElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, "'my_unit.dart';", "'my_unit.dart'".length));
|
| }
|
|
|
| @@ -1030,11 +1146,13 @@ class A {
|
| }
|
| ''');
|
| // prepare elements
|
| - ConstructorElement constructorElement = _findNodeElementAtString("A()",
|
| - (node) => node is ConstructorDeclaration);
|
| - FieldElement fieldElement = _findElement("field");
|
| + ConstructorElement constructorElement =
|
| + findNodeElementAtString("A()", (node) => node is ConstructorDeclaration);
|
| + FieldElement fieldElement = findElement("field");
|
| // verify
|
| - _assertRecordedRelation(fieldElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + fieldElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| _expectedLocation(constructorElement, 'field = 5'));
|
| }
|
|
|
| @@ -1046,12 +1164,32 @@ class A {
|
| }
|
| ''');
|
| // prepare elements
|
| - FieldElement fieldElement = _findElement("field");
|
| - Element fieldParameterElement = _findNodeElementAtString("field);");
|
| + FieldElement fieldElement = findElement("field");
|
| + Element fieldParameterElement = findNodeElementAtString("field);");
|
| // verify
|
| - _assertRecordedRelation(fieldElement,
|
| - IndexConstants.IS_REFERENCED_BY_QUALIFIED, _expectedLocation(
|
| - fieldParameterElement, 'field);'));
|
| + _assertRecordedRelation(
|
| + fieldElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _expectedLocation(fieldParameterElement, 'field);'));
|
| + }
|
| +
|
| + void test_isReferencedBy_TopLevelVariableElement() {
|
| + addSource('/lib.dart', '''
|
| +library lib;
|
| +var V;
|
| +''');
|
| + _indexTestUnit('''
|
| +import 'lib.dart' show V; // imp
|
| +''');
|
| + // prepare elements
|
| + var libElement = testLibraryElement.imports[0].importedLibrary;
|
| + var libUnit = libElement.definingCompilationUnit;
|
| + TopLevelVariableElement fieldElement = libUnit.topLevelVariables[0];
|
| + // verify
|
| + _assertRecordedRelation(
|
| + fieldElement,
|
| + IndexConstants.IS_REFERENCED_BY_QUALIFIED,
|
| + _expectedLocation(testUnitElement, 'V; // imp'));
|
| }
|
|
|
| void test_isReferencedBy_FunctionElement() {
|
| @@ -1063,16 +1201,22 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - FunctionElement element = _findElement("foo");
|
| - Element mainElement = _findElement("main");
|
| + FunctionElement element = findElement("foo");
|
| + Element mainElement = findElement("main");
|
| // "referenced" here
|
| - _assertRecordedRelation(element, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'foo);'));
|
| // only "invoked", but not "referenced"
|
| {
|
| - _assertRecordedRelation(element, IndexConstants.IS_INVOKED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_INVOKED_BY,
|
| _expectedLocation(mainElement, 'foo());'));
|
| - _assertNoRecordedRelation(element, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'foo());'));
|
| }
|
| }
|
| @@ -1084,10 +1228,12 @@ main(A p) {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element aElement = _findElement('A');
|
| - Element pElement = _findElement('p');
|
| + Element aElement = findElement('A');
|
| + Element pElement = findElement('p');
|
| // verify
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(pElement, 'A p) {'));
|
| }
|
|
|
| @@ -1108,20 +1254,32 @@ main() {
|
| ''');
|
| // prepare elements
|
| ImportElement importElement = testLibraryElement.imports[0];
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'myVar = 1;', 0));
|
| - _assertRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'myFunction();', 0));
|
| - _assertNoRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'print(0);', 0));
|
| // no references from import combinators
|
| - _assertNoRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, 'myVar, ', 0));
|
| - _assertNoRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, 'myFunction hide', 0));
|
| - _assertNoRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, 'myToHide;', 0));
|
| }
|
|
|
| @@ -1145,11 +1303,15 @@ main() {
|
| // prepare elements
|
| ImportElement importElementA = testLibraryElement.imports[0];
|
| ImportElement importElementB = testLibraryElement.imports[1];
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(importElementA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElementA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.myVar = 1;', 'pref.'.length));
|
| - _assertRecordedRelation(importElementB, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElementB,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.MyClass();', 'pref.'.length));
|
| }
|
|
|
| @@ -1172,11 +1334,15 @@ main() {
|
| // prepare elements
|
| ImportElement importElementA = testLibraryElement.imports[0];
|
| ImportElement importElementB = testLibraryElement.imports[1];
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(importElementA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElementA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.A();', 'pref.'.length));
|
| - _assertRecordedRelation(importElementB, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElementB,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.B();', 'pref.'.length));
|
| }
|
|
|
| @@ -1193,9 +1359,11 @@ main() {
|
| ''');
|
| // prepare elements
|
| ImportElement importElement = testLibraryElement.imports[0];
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.myFunc();', 'pref.'.length));
|
| }
|
|
|
| @@ -1213,9 +1381,11 @@ main() {
|
| ''');
|
| // prepare elements
|
| ImportElement importElement = testLibraryElement.imports[0];
|
| - Element mainElement = _findElement('main');
|
| + Element mainElement = findElement('main');
|
| // verify
|
| - _assertRecordedRelation(importElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + importElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'pref.A();', 'pref.'.length));
|
| }
|
|
|
| @@ -1260,10 +1430,12 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| - Element element = _findElement('L');
|
| + Element mainElement = findElement('main');
|
| + Element element = findElement('L');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'L;'));
|
| }
|
|
|
| @@ -1278,7 +1450,9 @@ export 'lib.dart';
|
| LibraryElement libElement = testLibraryElement.exportedLibraries[0];
|
| CompilationUnitElement libUnitElement = libElement.definingCompilationUnit;
|
| // verify
|
| - _assertRecordedRelation(libUnitElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + libUnitElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, "'lib.dart'", "'lib.dart'".length));
|
| }
|
|
|
| @@ -1293,7 +1467,9 @@ import 'lib.dart';
|
| LibraryElement libElement = testLibraryElement.imports[0].importedLibrary;
|
| CompilationUnitElement libUnitElement = libElement.definingCompilationUnit;
|
| // verify
|
| - _assertRecordedRelation(libUnitElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + libUnitElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, "'lib.dart'", "'lib.dart'".length));
|
| }
|
|
|
| @@ -1305,10 +1481,12 @@ main() {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element mainElement = _findElement('main');
|
| - Element element = _findElement('p');
|
| + Element mainElement = findElement('main');
|
| + Element element = findElement('p');
|
| // verify
|
| - _assertRecordedRelation(element, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + element,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(mainElement, 'p: 1'));
|
| }
|
|
|
| @@ -1322,17 +1500,23 @@ class A<T> {
|
| }
|
| ''');
|
| // prepare elements
|
| - Element typeParameterElement = _findElement('T');
|
| - Element fieldElement = _findElement('f');
|
| - Element parameterElement = _findElement('p');
|
| - Element variableElement = _findElement('v');
|
| - // verify
|
| - _assertRecordedRelation(typeParameterElement,
|
| - IndexConstants.IS_REFERENCED_BY, _expectedLocation(fieldElement, 'T f'));
|
| - _assertRecordedRelation(typeParameterElement,
|
| - IndexConstants.IS_REFERENCED_BY, _expectedLocation(parameterElement, 'T p'));
|
| - _assertRecordedRelation(typeParameterElement,
|
| - IndexConstants.IS_REFERENCED_BY, _expectedLocation(variableElement, 'T v'));
|
| + Element typeParameterElement = findElement('T');
|
| + Element fieldElement = findElement('f');
|
| + Element parameterElement = findElement('p');
|
| + Element variableElement = findElement('v');
|
| + // verify
|
| + _assertRecordedRelation(
|
| + typeParameterElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| + _expectedLocation(fieldElement, 'T f'));
|
| + _assertRecordedRelation(
|
| + typeParameterElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| + _expectedLocation(parameterElement, 'T p'));
|
| + _assertRecordedRelation(
|
| + typeParameterElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| + _expectedLocation(variableElement, 'T v'));
|
| }
|
|
|
| /**
|
| @@ -1349,12 +1533,16 @@ class A {}
|
| var myVariable = null;
|
| ''');
|
| // prepare elements
|
| - Element aElement = _findElement('A');
|
| - Element variableElement = _findElement('myVariable');
|
| + Element aElement = findElement('A');
|
| + Element variableElement = findElement('myVariable');
|
| // verify
|
| - _assertRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, 'A] text'));
|
| - _assertNoRecordedRelation(aElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertNoRecordedRelation(
|
| + aElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(variableElement, 'A] text'));
|
| }
|
|
|
| @@ -1370,7 +1558,9 @@ part 'test.dart';
|
| testLibraryElement = testUnitElement.library;
|
| indexDartUnit(store, context, testUnit);
|
| // verify
|
| - _assertRecordedRelation(testLibraryElement, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + testLibraryElement,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(testUnitElement, "lib;"));
|
| }
|
|
|
| @@ -1380,10 +1570,12 @@ class A {}
|
| A myVariable = null;
|
| ''');
|
| // prepare elements
|
| - Element classElementA = _findElement('A');
|
| - Element variableElement = _findElement('myVariable');
|
| + Element classElementA = findElement('A');
|
| + Element variableElement = findElement('myVariable');
|
| // verify
|
| - _assertRecordedRelation(classElementA, IndexConstants.IS_REFERENCED_BY,
|
| + _assertRecordedRelation(
|
| + classElementA,
|
| + IndexConstants.IS_REFERENCED_BY,
|
| _expectedLocation(variableElement, 'A myVariable'));
|
| }
|
|
|
| @@ -1393,10 +1585,12 @@ main(var p) {
|
| p = 1;
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - ParameterElement pElement = _findElement("p");
|
| + Element mainElement = findElement("main");
|
| + ParameterElement pElement = findElement("p");
|
| // verify
|
| - _assertRecordedRelation(pElement, IndexConstants.IS_WRITTEN_BY,
|
| + _assertRecordedRelation(
|
| + pElement,
|
| + IndexConstants.IS_WRITTEN_BY,
|
| _expectedLocation(mainElement, 'p = 1'));
|
| }
|
|
|
| @@ -1407,10 +1601,12 @@ main() {
|
| v = 1;
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| - LocalVariableElement vElement = _findElement("v");
|
| + Element mainElement = findElement("main");
|
| + LocalVariableElement vElement = findElement("v");
|
| // verify
|
| - _assertRecordedRelation(vElement, IndexConstants.IS_WRITTEN_BY,
|
| + _assertRecordedRelation(
|
| + vElement,
|
| + IndexConstants.IS_WRITTEN_BY,
|
| _expectedLocation(mainElement, 'v = 1'));
|
| }
|
|
|
| @@ -1424,18 +1620,21 @@ main(A a, p) {
|
| p.test(2);
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| + Element mainElement = findElement("main");
|
| Element nameElement = new NameElement('test');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_INVOKED_BY_RESOLVED, _expectedLocation(mainElement,
|
| - 'test(1)'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_INVOKED_BY_UNRESOLVED, _expectedLocation(mainElement,
|
| - 'test(2)'));
|
| - _assertNoRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_READ_BY_UNRESOLVED, _expectedLocation(mainElement,
|
| - 'test(2)'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_INVOKED_BY_RESOLVED,
|
| + _expectedLocation(mainElement, 'test(1)'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_INVOKED_BY_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'test(2)'));
|
| + _assertNoRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_READ_BY_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'test(2)'));
|
| }
|
|
|
| void test_nameIsReadBy() {
|
| @@ -1448,15 +1647,17 @@ main(A a, p) {
|
| print(p.test); // p
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| + Element mainElement = findElement("main");
|
| Element nameElement = new NameElement('test');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_READ_BY_RESOLVED, _expectedLocation(mainElement,
|
| - 'test); // a'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_READ_BY_UNRESOLVED, _expectedLocation(mainElement,
|
| - 'test); // p'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_READ_BY_RESOLVED,
|
| + _expectedLocation(mainElement, 'test); // a'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_READ_BY_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'test); // p'));
|
| }
|
|
|
| void test_nameIsReadWrittenBy() {
|
| @@ -1469,15 +1670,17 @@ main(A a, p) {
|
| p.test += 2;
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| + Element mainElement = findElement("main");
|
| Element nameElement = new NameElement('test');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_READ_WRITTEN_BY_RESOLVED, _expectedLocation(mainElement,
|
| - 'test += 1'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_READ_WRITTEN_BY_UNRESOLVED, _expectedLocation(
|
| - mainElement, 'test += 2'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_READ_WRITTEN_BY_RESOLVED,
|
| + _expectedLocation(mainElement, 'test += 1'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_READ_WRITTEN_BY_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'test += 2'));
|
| }
|
|
|
| void test_nameIsWrittenBy() {
|
| @@ -1490,15 +1693,17 @@ main(A a, p) {
|
| p.test = 2;
|
| }''');
|
| // prepare elements
|
| - Element mainElement = _findElement("main");
|
| + Element mainElement = findElement("main");
|
| Element nameElement = new NameElement('test');
|
| // verify
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_WRITTEN_BY_RESOLVED, _expectedLocation(mainElement,
|
| - 'test = 1'));
|
| - _assertRecordedRelation(nameElement,
|
| - IndexConstants.NAME_IS_WRITTEN_BY_UNRESOLVED, _expectedLocation(mainElement,
|
| - 'test = 2'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_WRITTEN_BY_RESOLVED,
|
| + _expectedLocation(mainElement, 'test = 1'));
|
| + _assertRecordedRelation(
|
| + nameElement,
|
| + IndexConstants.NAME_IS_WRITTEN_BY_UNRESOLVED,
|
| + _expectedLocation(mainElement, 'test = 2'));
|
| }
|
|
|
| void test_nullUnit() {
|
| @@ -1513,25 +1718,25 @@ main(A a, p) {
|
| void _assertDefinesTopLevelElement(Relationship relationship,
|
| ExpectedLocation expectedLocation) {
|
| _assertRecordedRelation(testLibraryElement, relationship, expectedLocation);
|
| - _assertRecordedRelation(UniverseElement.INSTANCE, relationship,
|
| + _assertRecordedRelation(
|
| + UniverseElement.INSTANCE,
|
| + relationship,
|
| expectedLocation);
|
| }
|
|
|
| - void _assertNoErrorsInSource() {
|
| - List<AnalysisError> errors = context.getErrors(testSource).errors;
|
| - expect(errors, isEmpty);
|
| - }
|
| -
|
| /**
|
| * Asserts that [recordedRelations] has no item with the specified properties.
|
| */
|
| void _assertNoRecordedRelation(Element element, Relationship relationship,
|
| ExpectedLocation location) {
|
| for (RecordedRelation recordedRelation in recordedRelations) {
|
| - if (_equalsRecordedRelation(recordedRelation, element, relationship,
|
| + if (_equalsRecordedRelation(
|
| + recordedRelation,
|
| + element,
|
| + relationship,
|
| location)) {
|
| - fail('not expected: ${recordedRelation} in\n' + recordedRelations.join(
|
| - '\n'));
|
| + fail(
|
| + 'not expected: ${recordedRelation} in\n' + recordedRelations.join('\n'));
|
| }
|
| }
|
| }
|
| @@ -1542,66 +1747,32 @@ main(A a, p) {
|
| Location _assertRecordedRelation(Element expectedElement,
|
| Relationship expectedRelationship, ExpectedLocation expectedLocation) {
|
| for (RecordedRelation recordedRelation in recordedRelations) {
|
| - if (_equalsRecordedRelation(recordedRelation, expectedElement,
|
| - expectedRelationship, expectedLocation)) {
|
| + if (_equalsRecordedRelation(
|
| + recordedRelation,
|
| + expectedElement,
|
| + expectedRelationship,
|
| + expectedLocation)) {
|
| return recordedRelation.location;
|
| }
|
| }
|
| - fail("not found\n$expectedElement $expectedRelationship "
|
| - "in $expectedLocation in\n" + recordedRelations.join('\n'));
|
| + fail(
|
| + "not found\n$expectedElement $expectedRelationship " "in $expectedLocation in\n"
|
| + +
|
| + recordedRelations.join('\n'));
|
| return null;
|
| }
|
|
|
| ExpectedLocation _expectedLocation(Element element, String search, [int length
|
| = -1]) {
|
| - int offset = _findOffset(search);
|
| + int offset = findOffset(search);
|
| if (length == -1) {
|
| - length = _getLeadingIdentifierLength(search);
|
| + length = getLeadingIdentifierLength(search);
|
| }
|
| return new ExpectedLocation(element, offset, length);
|
| }
|
|
|
| - Element _findElement(String name, [ElementKind kind]) {
|
| - return findChildElement(testUnitElement, name, kind);
|
| - }
|
| -
|
| - AstNode _findNodeAtOffset(int offset, [Predicate<AstNode> predicate]) {
|
| - AstNode result = new NodeLocator.con1(offset).searchWithin(testUnit);
|
| - if (result != null && predicate != null) {
|
| - result = result.getAncestor(predicate);
|
| - }
|
| - return result;
|
| - }
|
| -
|
| - AstNode _findNodeAtString(String search, [Predicate<AstNode> predicate]) {
|
| - int offset = _findOffset(search);
|
| - return _findNodeAtOffset(offset, predicate);
|
| - }
|
| -
|
| - Element _findNodeElementAtString(String search,
|
| - [Predicate<AstNode> predicate]) {
|
| - AstNode node = _findNodeAtString(search, predicate);
|
| - if (node == null) {
|
| - return null;
|
| - }
|
| - return ElementLocator.locate(node);
|
| - }
|
| -
|
| - int _findOffset(String search) {
|
| - int offset = testCode.indexOf(search);
|
| - expect(offset, isNonNegative, reason: "Not found '$search' in\n$testCode");
|
| - return offset;
|
| - }
|
| -
|
| void _indexTestUnit(String code) {
|
| - testCode = code;
|
| - testSource = addSource('/test.dart', code);
|
| - testUnit = resolveLibraryUnit(testSource);
|
| - if (verifyNoTestUnitErrors) {
|
| - _assertNoErrorsInSource();
|
| - }
|
| - testUnitElement = testUnit.element;
|
| - testLibraryElement = testUnitElement.library;
|
| + resolveTestUnit(code);
|
| indexDartUnit(store, context, testUnit);
|
| }
|
| }
|
|
|