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

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

Issue 1259263004: Forgotten test. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 4 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
« no previous file with comments | « no previous file | 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
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4
5 library test.edit.organize_directives;
6
7 import 'dart:async';
8
9 import 'package:analysis_server/src/edit/edit_domain.dart';
10 import 'package:analysis_server/src/protocol.dart';
11 import 'package:plugin/manager.dart';
12 import 'package:test_reflective_loader/test_reflective_loader.dart';
13 import 'package:unittest/unittest.dart' hide ERROR;
14
15 import '../analysis_abstract.dart';
16 import '../mocks.dart';
17
18 main() {
19 groupSep = ' | ';
20 defineReflectiveTests(OrganizeDirectivesTest);
21 }
22
23 @reflectiveTest
24 class OrganizeDirectivesTest extends AbstractAnalysisTest {
25 SourceFileEdit fileEdit;
26
27 @override
28 void setUp() {
29 super.setUp();
30 createProject();
31 ExtensionManager manager = new ExtensionManager();
32 manager.processPlugins([server.serverPlugin]);
33 handler = new EditDomainHandler(server);
34 }
35
36 Future test_BAD_doesNotExist() async {
37 await waitForTasksFinished();
38 Request request =
39 new EditOrganizeDirectivesParams('/no/such/file.dart').toRequest('0');
40 Response response = handler.handleRequest(request);
41 expect(
42 response, isResponseFailure('0', RequestErrorCode.FILE_NOT_ANALYZED));
43 }
44
45 Future test_BAD_hasParseError() async {
46 addTestFile('''
47 import 'dart:async'
48
49 main() {}
50 ''');
51 await waitForTasksFinished();
52 Request request = new EditOrganizeDirectivesParams(testFile).toRequest('0');
53 Response response = handler.handleRequest(request);
54 expect(response,
55 isResponseFailure('0', RequestErrorCode.ORGANIZE_DIRECTIVES_ERROR));
56 }
57
58 Future test_BAD_notDartFile() async {
59 await waitForTasksFinished();
60 Request request =
61 new EditOrganizeDirectivesParams('/not-a-Dart-file.txt').toRequest('0');
62 Response response = handler.handleRequest(request);
63 expect(
64 response, isResponseFailure('0', RequestErrorCode.FILE_NOT_ANALYZED));
65 }
66
67 Future test_OK_remove_unresolvedDirectives() {
68 addFile('$testFolder/existing_part1.dart', 'part of lib;');
69 addFile('$testFolder/existing_part2.dart', 'part of lib;');
70 addTestFile('''
71 library lib;
72
73 export 'dart:noSuchExportSdkLibrary';
74 export 'dart:async';
75 export 'package:noSuchExportPackage/andLib.dart';
76 export 'dart:math';
77
78 import 'dart:async';
79 import 'dart:noSuchImportSdkLibrary';
80 import 'dart:math';
81 import 'package:noSuchImportPackage/andLib.dart';
82
83 part 'existing_part1.dart';
84 part 'no_such_part.dart';
85 part 'existing_part2.dart';
86
87 main(Future f) {
88 print(PI);
89 }
90 ''');
91 return _assertOrganized(r'''
92 library lib;
93
94 import 'dart:async';
95 import 'dart:math';
96
97 export 'dart:async';
98 export 'dart:math';
99
100 part 'existing_part1.dart';
101 part 'existing_part2.dart';
102
103 main(Future f) {
104 print(PI);
105 }
106 ''');
107 }
108
109 Future test_OK_remove_unusedImports() {
110 addTestFile('''
111 library lib;
112
113 import 'dart:async';
114 import 'dart:math';
115 import 'dart:convert';
116 import 'dart:collection';
117
118 main() {
119 print(PI);
120 new HashMap();
121 }
122 ''');
123 return _assertOrganized(r'''
124 library lib;
125
126 import 'dart:collection';
127 import 'dart:math';
128
129 main() {
130 print(PI);
131 new HashMap();
132 }
133 ''');
134 }
135
136 Future _assertOrganized(String expectedCode) async {
137 await waitForTasksFinished();
138 _requestOrganize();
139 String resultCode = SourceEdit.applySequence(testCode, fileEdit.edits);
140 expect(resultCode, expectedCode);
141 }
142
143 void _requestOrganize() {
144 Request request = new EditOrganizeDirectivesParams(testFile).toRequest('0');
145 Response response = handleSuccessfulRequest(request);
146 var result = new EditOrganizeDirectivesResult.fromResponse(response);
147 fileEdit = result.edit;
148 }
149 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698