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

Side by Side Diff: pkg/analysis_server/test/services/refactoring/extract_local_test.dart

Issue 568333003: Issue 18895. Convert an expression function body into the block function body when Extract Local. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 test.services.refactoring.extract_local; 5 library test.services.refactoring.extract_local;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 8
9 import 'package:analysis_server/src/protocol.dart'; 9 import 'package:analysis_server/src/protocol.dart';
10 import 'package:analysis_server/src/services/refactoring/extract_local.dart'; 10 import 'package:analysis_server/src/services/refactoring/extract_local.dart';
11 import 'package:analysis_server/src/services/refactoring/refactoring.dart'; 11 import 'package:analysis_server/src/services/refactoring/refactoring.dart';
12 import '../../reflective_tests.dart';
13 import 'package:unittest/unittest.dart'; 12 import 'package:unittest/unittest.dart';
14 13
14 import '../../reflective_tests.dart';
15 import 'abstract_refactoring.dart'; 15 import 'abstract_refactoring.dart';
16 16
17 17
18 main() { 18 main() {
19 groupSep = ' | '; 19 groupSep = ' | ';
20 runReflectiveTests(ExtractLocalTest); 20 runReflectiveTests(ExtractLocalTest);
21 } 21 }
22 22
23 23
24 @ReflectiveTestCase() 24 @ReflectiveTestCase()
(...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after
711 int get foo => 42; 711 int get foo => 42;
712 } 712 }
713 main() { 713 main() {
714 A a = new A(); 714 A a = new A();
715 var res = a.foo; 715 var res = a.foo;
716 int b = 1 + res; // marker 716 int b = 1 + res; // marker
717 } 717 }
718 '''); 718 ''');
719 } 719 }
720 720
721 test_singleExpression_inExpressionBody() {
722 // TODO
723 indexTestUnit('''
724 main() {
725 print((x) => x.y * x.y + 1);
726 }
727 ''');
728 _createRefactoringForString('x.y');
729 // apply refactoring
730 return _assertSuccessfulRefactoring('''
731 main() {
732 print((x) {
733 var res = x.y;
734 return res * res + 1;
735 });
736 }
737 ''');
738 }
739
721 test_singleExpression_inMethod() { 740 test_singleExpression_inMethod() {
722 indexTestUnit(''' 741 indexTestUnit('''
723 class A { 742 class A {
724 main() { 743 main() {
725 print(1 + 2); 744 print(1 + 2);
726 } 745 }
727 } 746 }
728 '''); 747 ''');
729 _createRefactoringForString('1 + 2'); 748 _createRefactoringForString('1 + 2');
730 // apply refactoring 749 // apply refactoring
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
897 int length = search.length; 916 int length = search.length;
898 _createRefactoring(offset, length); 917 _createRefactoring(offset, length);
899 } 918 }
900 919
901 void _createRefactoringWithSuffix(String selectionSearch, String suffix) { 920 void _createRefactoringWithSuffix(String selectionSearch, String suffix) {
902 int offset = findOffset(selectionSearch + suffix); 921 int offset = findOffset(selectionSearch + suffix);
903 int length = selectionSearch.length; 922 int length = selectionSearch.length;
904 _createRefactoring(offset, length); 923 _createRefactoring(offset, length);
905 } 924 }
906 } 925 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698