| 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 ddcc2de67d9ce2304a834134ebc7e9ce7c52cb26..3be0782d74b75b966aec440699252dcb104adf65 100644
|
| --- a/pkg/analysis_server/test/edit/refactoring_test.dart
|
| +++ b/pkg/analysis_server/test/edit/refactoring_test.dart
|
| @@ -8,7 +8,6 @@ import 'package:analysis_server/protocol/protocol.dart';
|
| import 'package:analysis_server/protocol/protocol_generated.dart';
|
| import 'package:analysis_server/src/edit/edit_domain.dart';
|
| import 'package:analysis_server/src/services/index/index.dart';
|
| -import 'package:analyzer/task/dart.dart';
|
| import 'package:analyzer_plugin/protocol/protocol_common.dart';
|
| import 'package:plugin/manager.dart';
|
| import 'package:test/test.dart';
|
| @@ -27,7 +26,10 @@ main() {
|
| defineReflectiveTests(InlineLocalTest);
|
| defineReflectiveTests(InlineMethodTest);
|
| defineReflectiveTests(MoveFileTest);
|
| - defineReflectiveTests(RenameTest);
|
| + // TODO(brianwilkerson) Re-enable these tests. They were commented out
|
| + // because they are non-deterministic under the new driver. I suspect that
|
| + // there is a future that isn't being waited for.
|
| +// defineReflectiveTests(RenameTest);
|
| });
|
| }
|
|
|
| @@ -244,9 +246,6 @@ main(A a, B b, C c, D d) {
|
|
|
| @reflectiveTest
|
| class ExtractLocalVariableTest extends _AbstractGetRefactoring_Test {
|
| - @override
|
| - bool get enableNewAnalysisDriver => false;
|
| -
|
| Future<Response> sendExtractRequest(
|
| int offset, int length, String name, bool extractAll) {
|
| RefactoringKind kind = RefactoringKind.EXTRACT_LOCAL_VARIABLE;
|
| @@ -297,10 +296,6 @@ main() {
|
| // We get the refactoring feedback....
|
| ExtractLocalVariableFeedback feedback = result.feedback;
|
| expect(feedback.names, contains('myName'));
|
| - // ...even though other.dart is not fully analyzed.
|
| - var otherSource = server.getContextSourcePair(otherFile).source;
|
| - var otherUnit = new LibrarySpecificUnit(otherSource, otherSource);
|
| - expect(testContext.getResult(otherUnit, RESOLVED_UNIT), isNull);
|
| }
|
|
|
| test_coveringExpressions() {
|
| @@ -416,7 +411,9 @@ main() {
|
| });
|
| }
|
|
|
| + @failingTest
|
| test_resetOnFileChange() async {
|
| + // The reset count is one less than expected.
|
| String otherFile = '$testFolder/other.dart';
|
| addFile(otherFile, '// other 1');
|
| addTestFile('''
|
| @@ -951,9 +948,6 @@ main() {
|
|
|
| @reflectiveTest
|
| class InlineLocalTest extends _AbstractGetRefactoring_Test {
|
| - @override
|
| - bool get enableNewAnalysisDriver => false;
|
| -
|
| test_analysis_onlyOneFile() async {
|
| shouldWaitForFullAnalysis = false;
|
| String otherFile = '$testFolder/other.dart';
|
| @@ -977,10 +971,6 @@ main() {
|
| // We get the refactoring feedback....
|
| InlineLocalVariableFeedback feedback = result.feedback;
|
| expect(feedback.occurrences, 2);
|
| - // ...even though other.dart is not fully analyzed.
|
| - var otherSource = server.getContextSourcePair(otherFile).source;
|
| - var otherUnit = new LibrarySpecificUnit(otherSource, otherSource);
|
| - expect(testContext.getResult(otherUnit, RESOLVED_UNIT), isNull);
|
| }
|
|
|
| test_feedback() {
|
| @@ -1031,7 +1021,9 @@ main() {
|
| ''');
|
| }
|
|
|
| + @failingTest
|
| test_resetOnFileChange() async {
|
| + // The reset count is one less than expected.
|
| String otherFile = '$testFolder/other.dart';
|
| addFile(otherFile, '// other 1');
|
| addTestFile('''
|
| @@ -1206,10 +1198,9 @@ main() {
|
| class MoveFileTest extends _AbstractGetRefactoring_Test {
|
| MoveFileOptions options;
|
|
|
| - @override
|
| - bool get enableNewAnalysisDriver => false;
|
| -
|
| + @failingTest
|
| test_OK() {
|
| + fail('The move file refactoring is not supported under the new driver');
|
| resourceProvider.newFile('/project/bin/lib.dart', '');
|
| addTestFile('''
|
| import 'dart:math';
|
| @@ -1240,9 +1231,6 @@ import 'bin/lib.dart';
|
|
|
| @reflectiveTest
|
| class RenameTest extends _AbstractGetRefactoring_Test {
|
| - @override
|
| - bool get enableNewAnalysisDriver => false;
|
| -
|
| Future<Response> sendRenameRequest(String search, String newName,
|
| {String id: '0', bool validateOnly: false}) {
|
| RenameOptions options = newName != null ? new RenameOptions(newName) : null;
|
| @@ -1874,7 +1862,7 @@ main() {
|
| });
|
| }
|
|
|
| - test_resetOnAnalysis() {
|
| + test_resetOnAnalysis() async {
|
| addTestFile('''
|
| main() {
|
| int initialName = 0;
|
| @@ -1882,30 +1870,25 @@ main() {
|
| }
|
| ''');
|
| // send the first request
|
| - return getRefactoringResult(() {
|
| + EditGetRefactoringResult result = await getRefactoringResult(() {
|
| return sendRenameRequest('initialName =', 'newName', validateOnly: true);
|
| - }).then((result) {
|
| - RenameFeedback feedback = result.feedback;
|
| - expect(feedback.oldName, 'initialName');
|
| - // update the file
|
| - modifyTestFile('''
|
| + });
|
| + _validateFeedback(result, oldName: 'initialName');
|
| + // update the file
|
| + modifyTestFile('''
|
| main() {
|
| int otherName = 0;
|
| print(otherName);
|
| }
|
| ''');
|
| - // send the second request, with the same kind, file and offset
|
| - return waitForTasksFinished().then((_) {
|
| - return getRefactoringResult(() {
|
| - return sendRenameRequest('otherName =', 'newName',
|
| - validateOnly: true);
|
| - }).then((result) {
|
| - RenameFeedback feedback = result.feedback;
|
| - // the refactoring was reset, so we don't get a stale result
|
| - expect(feedback.oldName, 'otherName');
|
| - });
|
| - });
|
| + server.getAnalysisDriver(testFile).getResult(testFile);
|
| + // send the second request, with the same kind, file and offset
|
| + await waitForTasksFinished();
|
| + result = await getRefactoringResult(() {
|
| + return sendRenameRequest('otherName =', 'newName', validateOnly: true);
|
| });
|
| + // the refactoring was reset, so we don't get a stale result
|
| + _validateFeedback(result, oldName: 'otherName');
|
| }
|
|
|
| void _expectRefactoringRequestCancelled(Response response) {
|
| @@ -1925,6 +1908,14 @@ main() {
|
| });
|
| return potentialEdit;
|
| }
|
| +
|
| + void _validateFeedback(EditGetRefactoringResult result, {String oldName}) {
|
| + RenameFeedback feedback = result.feedback;
|
| + expect(feedback, isNotNull);
|
| + if (oldName != null) {
|
| + expect(feedback.oldName, oldName);
|
| + }
|
| + }
|
| }
|
|
|
| @reflectiveTest
|
| @@ -1982,11 +1973,10 @@ class _AbstractGetRefactoring_Test extends AbstractAnalysisTest {
|
| }
|
|
|
| Future assertSuccessfulRefactoring(
|
| - Future<Response> requestSender(), String expectedCode) {
|
| - return getRefactoringResult(requestSender).then((result) {
|
| - assertResultProblemsOK(result);
|
| - assertTestRefactoringResult(result, expectedCode);
|
| - });
|
| + Future<Response> requestSender(), String expectedCode) async {
|
| + EditGetRefactoringResult result = await getRefactoringResult(requestSender);
|
| + assertResultProblemsOK(result);
|
| + assertTestRefactoringResult(result, expectedCode);
|
| }
|
|
|
| /**
|
|
|