| Index: pkg/analyzer/test/src/task/incremental_element_builder_test.dart
|
| diff --git a/pkg/analyzer/test/src/task/incremental_element_builder_test.dart b/pkg/analyzer/test/src/task/incremental_element_builder_test.dart
|
| index 27427dc5d3ad529b5c5ea984965b7002bb345383..0df06737808323dcf275b198e695c2e6220bbeb7 100644
|
| --- a/pkg/analyzer/test/src/task/incremental_element_builder_test.dart
|
| +++ b/pkg/analyzer/test/src/task/incremental_element_builder_test.dart
|
| @@ -480,6 +480,56 @@ class A {
|
| expect(helper.delta.removedMethods, isEmpty);
|
| }
|
|
|
| + test_classDelta_field_syntheticAndNot_renameNonSynthetic() {
|
| + var helper = new _ClassDeltaHelper('A');
|
| + _buildOldUnit(r'''
|
| +class A {
|
| + int foo;
|
| + int get foo => 1;
|
| +}
|
| +''');
|
| + helper.initOld(oldUnit);
|
| + FieldDeclaration oldFieldDeclNode = helper.oldMembers[0];
|
| + VariableDeclaration oldFieldNode = oldFieldDeclNode.fields.variables.single;
|
| + FieldElement oldFieldElement = oldFieldNode.name.staticElement;
|
| + _buildNewUnit(r'''
|
| +class A {
|
| + int _foo;
|
| + int get foo => 1;
|
| +}
|
| +''');
|
| + helper.initNew(newUnit, unitDelta);
|
| + // nodes
|
| + FieldDeclaration newFieldDeclNode = helper.newMembers[0];
|
| + VariableDeclaration newFieldNode = newFieldDeclNode.fields.variables.single;
|
| + MethodDeclaration getterNode = helper.newMembers[1];
|
| + expect(getterNode, same(helper.oldMembers[1]));
|
| + // elements
|
| + FieldElement newFieldElement = newFieldNode.name.staticElement;
|
| + PropertyAccessorElement getterElement = getterNode.element;
|
| + expect(newFieldElement.name, '_foo');
|
| + expect(
|
| + helper.element.fields,
|
| + unorderedMatches(
|
| + [same(newFieldElement), same(getterElement.variable)]));
|
| + expect(
|
| + helper.element.accessors,
|
| + unorderedMatches([
|
| + same(newFieldElement.getter),
|
| + same(newFieldElement.setter),
|
| + same(getterElement)
|
| + ]));
|
| + // verify delta
|
| + expect(helper.delta.addedConstructors, isEmpty);
|
| + expect(helper.delta.removedConstructors, isEmpty);
|
| + expect(helper.delta.addedAccessors,
|
| + unorderedEquals([newFieldElement.getter, newFieldElement.setter]));
|
| + expect(helper.delta.removedAccessors,
|
| + [oldFieldElement.getter, oldFieldElement.setter]);
|
| + expect(helper.delta.addedMethods, isEmpty);
|
| + expect(helper.delta.removedMethods, isEmpty);
|
| + }
|
| +
|
| test_classDelta_getter_add() {
|
| var helper = new _ClassDeltaHelper('A');
|
| _buildOldUnit(r'''
|
| @@ -2051,6 +2101,7 @@ class _BuiltElementsValidator extends AstComparator {
|
| // Compare properties.
|
| _verifyEqual('$desc name', expected.name, actual.name);
|
| _verifyEqual('$desc nameOffset', expected.nameOffset, actual.nameOffset);
|
| + _verifyEqual('$desc isSynthetic', expected.isSynthetic, actual.isSynthetic);
|
| if (expected is ElementImpl && actual is ElementImpl) {
|
| _verifyEqual('$desc codeOffset', expected.codeOffset, actual.codeOffset);
|
| _verifyEqual('$desc codeLength', expected.codeLength, actual.codeLength);
|
| @@ -2077,6 +2128,12 @@ class _BuiltElementsValidator extends AstComparator {
|
| _verifyElement(expected.getter, actual.getter, '$desc getter');
|
| _verifyElement(expected.setter, actual.setter, '$desc setter');
|
| }
|
| + // Compare implicit properties.
|
| + if (expected is PropertyAccessorElement &&
|
| + actual is PropertyAccessorElement &&
|
| + !expected.isSynthetic) {
|
| + _verifyElement(expected.variable, actual.variable, '$desc variable');
|
| + }
|
| // Compare parameters.
|
| if (expected is ExecutableElement && actual is ExecutableElement) {
|
| List<ParameterElement> actualParameters = actual.parameters;
|
|
|