| OLD | NEW |
| 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.analysis.reanalyze; | 5 library test.analysis.reanalyze; |
| 6 | 6 |
| 7 import 'package:analysis_server/plugin/protocol/protocol.dart'; | 7 import 'package:analysis_server/plugin/protocol/protocol.dart'; |
| 8 import 'package:analysis_server/src/constants.dart'; | 8 import 'package:analysis_server/src/constants.dart'; |
| 9 import 'package:analyzer/src/generated/engine.dart'; | 9 import 'package:analyzer/src/generated/engine.dart'; |
| 10 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 10 import 'package:test_reflective_loader/test_reflective_loader.dart'; |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 AnalysisContext oldContext = contexts[0]; | 37 AnalysisContext oldContext = contexts[0]; |
| 38 // Reanalyze should cause a brand new context to be built. | 38 // Reanalyze should cause a brand new context to be built. |
| 39 Request request = new Request("0", ANALYSIS_REANALYZE); | 39 Request request = new Request("0", ANALYSIS_REANALYZE); |
| 40 handleSuccessfulRequest(request); | 40 handleSuccessfulRequest(request); |
| 41 contexts = server.folderMap.values.toList(); | 41 contexts = server.folderMap.values.toList(); |
| 42 expect(contexts, hasLength(1)); | 42 expect(contexts, hasLength(1)); |
| 43 AnalysisContext newContext = contexts[0]; | 43 AnalysisContext newContext = contexts[0]; |
| 44 expect(newContext, isNot(same(oldContext))); | 44 expect(newContext, isNot(same(oldContext))); |
| 45 } | 45 } |
| 46 | 46 |
| 47 test_reanalyze_with_overlay() { | 47 test_reanalyze_with_overlay() async { |
| 48 createProject(); | 48 createProject(); |
| 49 resourceProvider.newFolder(testFolder); | 49 resourceProvider.newFolder(testFolder); |
| 50 resourceProvider.newFile(testFile, 'main() {}'); | 50 resourceProvider.newFile(testFile, 'main() {}'); |
| 51 return waitForTasksFinished().then((_) { | 51 await waitForTasksFinished(); |
| 52 // Update the content with an overlay that contains a syntax error. | 52 // Update the content with an overlay that contains a syntax error. |
| 53 server.updateContent('1', {testFile: new AddContentOverlay('main() {')}); | 53 server.updateContent('1', {testFile: new AddContentOverlay('main() {')}); |
| 54 return waitForTasksFinished(); | 54 await waitForTasksFinished(); |
| 55 }).then((_) { | 55 // Verify that the syntax error was detected. |
| 56 // Verify that the syntax error was detected. | 56 { |
| 57 List<AnalysisError> errors = filesErrors[testFile]; | 57 List<AnalysisError> errors = filesErrors[testFile]; |
| 58 expect(errors, hasLength(1)); | 58 expect(errors, hasLength(1)); |
| 59 // Remove testFile from filesErrors so that we'll notice when the file is | 59 } |
| 60 // re-analyzed. | 60 // Remove testFile from filesErrors so that we'll notice when the file is |
| 61 filesErrors.remove(testFile); | 61 // re-analyzed. |
| 62 // Reanalyze. | 62 filesErrors.remove(testFile); |
| 63 server.reanalyze(null); | 63 // Reanalyze. |
| 64 return waitForTasksFinished(); | 64 server.reanalyze(null); |
| 65 }).then((_) { | 65 await waitForTasksFinished(); |
| 66 // The file should have been reanalyzed. | 66 // The file should have been reanalyzed. |
| 67 expect(filesErrors, contains(testFile)); | 67 expect(filesErrors, contains(testFile)); |
| 68 // Verify that the syntax error is present (this indicates that the | 68 // Verify that the syntax error is present (this indicates that the |
| 69 // content introduced by the call to updateContent is still in effect). | 69 // content introduced by the call to updateContent is still in effect). |
| 70 { |
| 70 List<AnalysisError> errors = filesErrors[testFile]; | 71 List<AnalysisError> errors = filesErrors[testFile]; |
| 71 expect(errors, hasLength(1)); | 72 expect(errors, hasLength(1)); |
| 72 }); | 73 } |
| 73 } | 74 } |
| 74 } | 75 } |
| OLD | NEW |