Index: pkg/analysis_server/test/edit/refactoring_test.dart |
diff --git a/pkg/analysis_server/test/edit/refactoring_test.dart b/pkg/analysis_server/test/edit/refactoring_test.dart |
index fbaf6ff49832eb3225f32064656ae5b35ce62877..7d5f12057d2d5ab3b679437f5b4135efa606ddd4 100644 |
--- a/pkg/analysis_server/test/edit/refactoring_test.dart |
+++ b/pkg/analysis_server/test/edit/refactoring_test.dart |
@@ -28,6 +28,7 @@ main() { |
runReflectiveTests(InlineMethodTest); |
runReflectiveTests(MoveFileTest); |
runReflectiveTests(RenameTest); |
+ runReflectiveTests(_NoSearchEngine); |
} |
@@ -638,6 +639,11 @@ class GetAvailableRefactoringsTest extends AbstractAnalysisTest { |
}); |
} |
+ @override |
+ Index createIndex() { |
+ return createLocalMemoryIndex(); |
+ } |
+ |
/** |
* Returns the list of available refactorings for the given [offset] and |
* [length]. |
@@ -1744,3 +1750,46 @@ class _AbstractGetRefactoring_Test extends AbstractAnalysisTest { |
handler = new EditDomainHandler(server); |
} |
} |
+ |
+ |
+@reflectiveTest |
+class _NoSearchEngine extends _AbstractGetRefactoring_Test { |
+ @override |
+ Index createIndex() { |
+ return null; |
+ } |
+ |
+ test_getAvailableRefactorings() async { |
+ addTestFile(''' |
+main() { |
+ print(1 + 2); |
+} |
+'''); |
+ await waitForTasksFinished(); |
+ Request request = |
+ new EditGetAvailableRefactoringsParams(testFile, 0, 0).toRequest('0'); |
+ return _assertErrorResposeNoIndex(request); |
+ } |
+ |
+ test_getRefactoring_noSearchEngine() async { |
+ addTestFile(''' |
+main() { |
+ print(1 + 2); |
+} |
+'''); |
+ await waitForTasksFinished(); |
+ Request request = new EditGetRefactoringParams( |
+ RefactoringKind.EXTRACT_LOCAL_VARIABLE, |
+ testFile, |
+ 0, |
+ 0, |
+ true).toRequest('0'); |
+ return _assertErrorResposeNoIndex(request); |
+ } |
+ |
+ _assertErrorResposeNoIndex(Request request) async { |
+ Response response = await serverChannel.sendRequest(request); |
+ expect(response.error, isNotNull); |
+ expect(response.error.code, RequestErrorCode.NO_INDEX_GENERATED); |
+ } |
+} |