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 |