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

Side by Side Diff: pkg/analysis_server/test/edit/sort_members_test.dart

Issue 1507083002: Issue 24988. Parse source for sorting. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years 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/analysis_server/lib/src/edit/edit_domain.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) 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.edit.sort_members; 5 library test.edit.sort_members;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 8
9 import 'package:analysis_server/plugin/protocol/protocol.dart'; 9 import 'package:analysis_server/plugin/protocol/protocol.dart';
10 import 'package:analysis_server/src/edit/edit_domain.dart'; 10 import 'package:analysis_server/src/edit/edit_domain.dart';
(...skipping 16 matching lines...) Expand all
27 27
28 @override 28 @override
29 void setUp() { 29 void setUp() {
30 super.setUp(); 30 super.setUp();
31 createProject(); 31 createProject();
32 ExtensionManager manager = new ExtensionManager(); 32 ExtensionManager manager = new ExtensionManager();
33 manager.processPlugins([server.serverPlugin]); 33 manager.processPlugins([server.serverPlugin]);
34 handler = new EditDomainHandler(server); 34 handler = new EditDomainHandler(server);
35 } 35 }
36 36
37 Future test_BAD_doesNotExist() async { 37 test_BAD_doesNotExist() async {
38 await waitForTasksFinished();
39 Request request = 38 Request request =
40 new EditSortMembersParams('/no/such/file.dart').toRequest('0'); 39 new EditSortMembersParams('/no/such/file.dart').toRequest('0');
41 Response response = handler.handleRequest(request); 40 Response response = handler.handleRequest(request);
42 expect(response, 41 expect(response,
43 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_INVALID_FILE)); 42 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_INVALID_FILE));
44 } 43 }
45 44
46 Future test_BAD_hasParseError() async { 45 test_BAD_hasParseError() async {
47 addTestFile(''' 46 addTestFile('''
48 main() { 47 main() {
49 print() 48 print()
50 } 49 }
51 '''); 50 ''');
52 await waitForTasksFinished();
53 Request request = new EditSortMembersParams(testFile).toRequest('0'); 51 Request request = new EditSortMembersParams(testFile).toRequest('0');
54 Response response = handler.handleRequest(request); 52 Response response = handler.handleRequest(request);
55 expect(response, 53 expect(response,
56 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_PARSE_ERRORS)); 54 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_PARSE_ERRORS));
57 } 55 }
58 56
59 Future test_BAD_notDartFile() async { 57 test_BAD_notDartFile() async {
60 await waitForTasksFinished();
61 Request request = 58 Request request =
62 new EditSortMembersParams('/not-a-Dart-file.txt').toRequest('0'); 59 new EditSortMembersParams('/not-a-Dart-file.txt').toRequest('0');
63 Response response = handler.handleRequest(request); 60 Response response = handler.handleRequest(request);
64 expect(response, 61 expect(response,
65 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_INVALID_FILE)); 62 isResponseFailure('0', RequestErrorCode.SORT_MEMBERS_INVALID_FILE));
66 } 63 }
67 64
68 Future test_OK_classMembers_method() { 65 test_OK_afterWaitForAnalysis() async {
66 addTestFile('''
67 class C {}
68 class A {}
69 class B {}
70 ''');
71 await waitForTasksFinished();
72 return _assertSorted(r'''
73 class A {}
74 class B {}
75 class C {}
76 ''');
77 }
78
79 test_OK_classMembers_method() async {
69 addTestFile(''' 80 addTestFile('''
70 class A { 81 class A {
71 c() {} 82 c() {}
72 a() {} 83 a() {}
73 b() {} 84 b() {}
74 } 85 }
75 '''); 86 ''');
76 return _assertSorted(r''' 87 return _assertSorted(r'''
77 class A { 88 class A {
78 a() {} 89 a() {}
79 b() {} 90 b() {}
80 c() {} 91 c() {}
81 } 92 }
82 '''); 93 ''');
83 } 94 }
84 95
85 Future test_OK_directives() { 96 test_OK_directives() async {
86 addTestFile(''' 97 addTestFile('''
87 library lib; 98 library lib;
88 99
89 export 'dart:bbb'; 100 export 'dart:bbb';
90 import 'dart:bbb'; 101 import 'dart:bbb';
91 export 'package:bbb/bbb.dart'; 102 export 'package:bbb/bbb.dart';
92 import 'bbb/bbb.dart'; 103 import 'bbb/bbb.dart';
93 export 'dart:aaa'; 104 export 'dart:aaa';
94 export 'package:aaa/aaa.dart'; 105 export 'package:aaa/aaa.dart';
95 import 'package:bbb/bbb.dart'; 106 import 'package:bbb/bbb.dart';
(...skipping 30 matching lines...) Expand all
126 export 'bbb/bbb.dart'; 137 export 'bbb/bbb.dart';
127 138
128 part 'aaa/aaa.dart'; 139 part 'aaa/aaa.dart';
129 part 'bbb/bbb.dart'; 140 part 'bbb/bbb.dart';
130 141
131 main() { 142 main() {
132 } 143 }
133 '''); 144 ''');
134 } 145 }
135 146
136 Future test_OK_unitMembers_class() { 147 test_OK_unitMembers_class() async {
137 addTestFile(''' 148 addTestFile('''
138 class C {} 149 class C {}
139 class A {} 150 class A {}
140 class B {} 151 class B {}
141 '''); 152 ''');
142 return _assertSorted(r''' 153 return _assertSorted(r'''
143 class A {} 154 class A {}
144 class B {} 155 class B {}
145 class C {} 156 class C {}
146 '''); 157 ''');
147 } 158 }
148 159
149 Future _assertSorted(String expectedCode) async { 160 Future _assertSorted(String expectedCode) async {
150 await waitForTasksFinished();
151 _requestSort(); 161 _requestSort();
152 String resultCode = SourceEdit.applySequence(testCode, fileEdit.edits); 162 String resultCode = SourceEdit.applySequence(testCode, fileEdit.edits);
153 expect(resultCode, expectedCode); 163 expect(resultCode, expectedCode);
154 } 164 }
155 165
156 void _requestSort() { 166 void _requestSort() {
157 Request request = new EditSortMembersParams(testFile).toRequest('0'); 167 Request request = new EditSortMembersParams(testFile).toRequest('0');
158 Response response = handleSuccessfulRequest(request); 168 Response response = handleSuccessfulRequest(request);
159 var result = new EditSortMembersResult.fromResponse(response); 169 var result = new EditSortMembersResult.fromResponse(response);
160 fileEdit = result.edit; 170 fileEdit = result.edit;
161 } 171 }
162 } 172 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/lib/src/edit/edit_domain.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698