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

Side by Side Diff: pkg/analyzer/test/src/task/incremental_element_builder_test.dart

Issue 2498873004: Issue 27689. Fix incremental resolution with body modifiers changes. (Closed)
Patch Set: Created 4 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « pkg/analyzer/test/generated/incremental_resolver_test.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library analyzer.test.src.task.incremental_element_builder_test; 5 library analyzer.test.src.task.incremental_element_builder_test;
6 6
7 import 'package:analyzer/dart/ast/ast.dart'; 7 import 'package:analyzer/dart/ast/ast.dart';
8 import 'package:analyzer/dart/element/element.dart'; 8 import 'package:analyzer/dart/element/element.dart';
9 import 'package:analyzer/dart/element/visitor.dart'; 9 import 'package:analyzer/dart/element/visitor.dart';
10 import 'package:analyzer/src/dart/ast/utilities.dart'; 10 import 'package:analyzer/src/dart/ast/utilities.dart';
(...skipping 693 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 expect(helper.element.methods, [newElementA, elementB]); 704 expect(helper.element.methods, [newElementA, elementB]);
705 // verify delta 705 // verify delta
706 expect(helper.delta.addedConstructors, isEmpty); 706 expect(helper.delta.addedConstructors, isEmpty);
707 expect(helper.delta.removedConstructors, isEmpty); 707 expect(helper.delta.removedConstructors, isEmpty);
708 expect(helper.delta.addedAccessors, isEmpty); 708 expect(helper.delta.addedAccessors, isEmpty);
709 expect(helper.delta.removedAccessors, isEmpty); 709 expect(helper.delta.removedAccessors, isEmpty);
710 expect(helper.delta.addedMethods, unorderedEquals([newElementA])); 710 expect(helper.delta.addedMethods, unorderedEquals([newElementA]));
711 expect(helper.delta.removedMethods, unorderedEquals([oldElementA])); 711 expect(helper.delta.removedMethods, unorderedEquals([oldElementA]));
712 } 712 }
713 713
714 solo_test_classDelta_method_async_addStar() {
Brian Wilkerson 2016/11/14 18:17:43 Remove "solo_".
715 var helper = new _ClassDeltaHelper('A');
716 _buildOldUnit(r'''
717 class A {
718 Stream test() async {}
719 }
720 ''');
721 helper.initOld(oldUnit);
722 _buildNewUnit(r'''
723 class A {
724 Stream test() async* {}
725 }
726 ''');
727 helper.initNew(newUnit, unitDelta);
728 // nodes
729 ClassMember oldNodeA = helper.oldMembers[0];
730 ClassMember newNodeA = helper.newMembers[0];
731 expect(newNodeA, isNot(same(oldNodeA)));
732 // elements
733 MethodElement oldElement = oldNodeA.element;
734 MethodElement newElement = newNodeA.element;
735 expect(newElement, isNotNull);
736 expect(newElement.name, 'test');
737 expect(oldElement.isAsynchronous, isTrue);
738 expect(oldElement.isGenerator, isFalse);
739 expect(newElement.isAsynchronous, isTrue);
740 expect(newElement.isGenerator, isTrue);
741 expect(helper.element.methods, [newElement]);
742 // verify delta
743 expect(helper.delta.addedConstructors, isEmpty);
744 expect(helper.delta.removedConstructors, isEmpty);
745 expect(helper.delta.addedAccessors, isEmpty);
746 expect(helper.delta.removedAccessors, isEmpty);
747 expect(helper.delta.addedMethods, unorderedEquals([newElement]));
748 expect(helper.delta.removedMethods, unorderedEquals([oldElement]));
749 }
750
714 test_classDelta_method_changeName() { 751 test_classDelta_method_changeName() {
715 var helper = new _ClassDeltaHelper('A'); 752 var helper = new _ClassDeltaHelper('A');
716 _buildOldUnit(r''' 753 _buildOldUnit(r'''
717 class A { 754 class A {
718 aaa(int ap) { 755 aaa(int ap) {
719 int av = 1; 756 int av = 1;
720 af(afp) {} 757 af(afp) {}
721 } 758 }
722 bbb(int bp) { 759 bbb(int bp) {
723 int bv = 1; 760 int bv = 1;
(...skipping 1579 matching lines...) Expand 10 before | Expand all | Expand 10 after
2303 unitMember is ClassDeclaration && unitMember.name.name == name); 2340 unitMember is ClassDeclaration && unitMember.name.name == name);
2304 } 2341 }
2305 2342
2306 class _MaterializeLazyElementsVisitor extends GeneralizingElementVisitor { 2343 class _MaterializeLazyElementsVisitor extends GeneralizingElementVisitor {
2307 @override 2344 @override
2308 visitExecutableElement(ExecutableElement element) { 2345 visitExecutableElement(ExecutableElement element) {
2309 element.parameters; 2346 element.parameters;
2310 super.visitExecutableElement(element); 2347 super.visitExecutableElement(element);
2311 } 2348 }
2312 } 2349 }
OLDNEW
« no previous file with comments | « pkg/analyzer/test/generated/incremental_resolver_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698