Index: pkg/analyzer_plugin/test/plugin/navigation_mixin_test.dart |
diff --git a/pkg/analyzer_plugin/test/plugin/navigation_mixin_test.dart b/pkg/analyzer_plugin/test/plugin/navigation_mixin_test.dart |
index f7573fc343dce99af6e0225baa09966d7509971d..eea7c012a16e743539e855b7610be793ec1ade60 100644 |
--- a/pkg/analyzer_plugin/test/plugin/navigation_mixin_test.dart |
+++ b/pkg/analyzer_plugin/test/plugin/navigation_mixin_test.dart |
@@ -8,6 +8,7 @@ import 'package:analyzer/file_system/file_system.dart'; |
import 'package:analyzer/file_system/memory_file_system.dart'; |
import 'package:analyzer/src/dart/analysis/driver.dart'; |
import 'package:analyzer_plugin/plugin/navigation_mixin.dart'; |
+import 'package:analyzer_plugin/protocol/protocol.dart'; |
import 'package:analyzer_plugin/protocol/protocol_common.dart'; |
import 'package:analyzer_plugin/protocol/protocol_generated.dart'; |
import 'package:analyzer_plugin/src/utilities/navigation/navigation.dart'; |
@@ -50,13 +51,30 @@ class NavigationMixinTest { |
await plugin.handleAnalysisSetContextRoots( |
new AnalysisSetContextRootsParams([contextRoot1])); |
- var result = await plugin.handleAnalysisGetNavigation( |
- new AnalysisGetNavigationParams(filePath1, 1, 2)); |
+ AnalysisGetNavigationResult result = |
+ await plugin.handleAnalysisGetNavigation( |
+ new AnalysisGetNavigationParams(filePath1, 1, 2)); |
expect(result, isNotNull); |
expect(result.files, hasLength(1)); |
expect(result.targets, hasLength(1)); |
expect(result.regions, hasLength(2)); |
} |
+ |
+ test_sendNavigationNotification() async { |
+ await plugin.handleAnalysisSetContextRoots( |
+ new AnalysisSetContextRootsParams([contextRoot1])); |
+ |
+ plugin.mockChannel.listen(null, |
+ onNotification: (Notification notification) { |
+ expect(notification, isNotNull); |
+ AnalysisNavigationParams params = |
+ new AnalysisNavigationParams.fromNotification(notification); |
+ expect(params.files, hasLength(1)); |
+ expect(params.targets, hasLength(1)); |
+ expect(params.regions, hasLength(2)); |
+ }); |
+ await plugin.sendNavigationNotification(filePath1); |
+ } |
} |
class _TestNavigationContributor implements NavigationContributor { |
@@ -89,8 +107,8 @@ class _TestServerPlugin extends MockServerPlugin with NavigationMixin { |
@override |
Future<NavigationRequest> getNavigationRequest( |
AnalysisGetNavigationParams parameters) async { |
- AnalysisResult result = new AnalysisResult( |
- null, null, null, null, null, null, null, null, null, null, null); |
+ AnalysisResult result = new AnalysisResult(null, null, parameters.file, |
+ null, null, null, null, null, null, null, null); |
return new DartNavigationRequestImpl( |
resourceProvider, parameters.offset, parameters.length, result); |
} |