Skip to content

Commit 456e81e

Browse files
srawlinsCommit Queue
authored andcommitted
DAS: Remove a mock PluginInfo; can use the real one instead
Change-Id: I4c1cdb879f5f0d3370752721298a9b089db5e849 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/445523 Commit-Queue: Samuel Rawlins <[email protected]> Reviewed-by: Konstantin Shcheglov <[email protected]>
1 parent 838e1da commit 456e81e

File tree

5 files changed

+45
-62
lines changed

5 files changed

+45
-62
lines changed

pkg/analysis_server/test/edit/assists_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import 'package:test/test.dart';
1414
import 'package:test_reflective_loader/test_reflective_loader.dart';
1515

1616
import '../analysis_server_base.dart';
17-
import '../src/plugin/plugin_manager_test.dart';
17+
import '../mocks.dart';
1818

1919
void main() {
2020
defineReflectiveSuite(() {

pkg/analysis_server/test/edit/fixes_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import 'package:test/test.dart';
1818
import 'package:test_reflective_loader/test_reflective_loader.dart';
1919

2020
import '../analysis_server_base.dart';
21-
import '../src/plugin/plugin_manager_test.dart';
21+
import '../mocks.dart';
2222

2323
void main() {
2424
defineReflectiveSuite(() {

pkg/analysis_server/test/mocks.dart

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,11 @@ import 'dart:io';
88

99
import 'package:analysis_server/protocol/protocol.dart';
1010
import 'package:analysis_server/protocol/protocol_generated.dart';
11+
import 'package:analysis_server/src/plugin/notification_manager.dart';
1112
import 'package:analysis_server/src/utilities/process.dart';
1213
import 'package:analyzer/source/source.dart';
14+
import 'package:analyzer_plugin/protocol/protocol.dart' as plugin;
15+
import 'package:analyzer_plugin/protocol/protocol_common.dart' as protocol;
1316
import 'package:http/http.dart' as http;
1417
import 'package:test/test.dart';
1518

@@ -136,14 +139,38 @@ class MockSource implements Source {
136139
String toString() => fullName;
137140
}
138141

139-
class StringTypedMock {
140-
final String? _toString;
142+
class TestNotificationManager implements AbstractNotificationManager {
143+
List<plugin.Notification> notifications = [];
141144

142-
StringTypedMock(this._toString);
145+
Map<String, Map<String, List<protocol.AnalysisError>>> recordedErrors = {};
146+
147+
List<String> pluginErrors = [];
148+
149+
@override
150+
void handlePluginError(String message) {
151+
pluginErrors.add(message);
152+
}
143153

144154
@override
145-
String toString() {
146-
return _toString ?? super.toString();
155+
void handlePluginNotification(
156+
String pluginId,
157+
plugin.Notification notification,
158+
) {
159+
notifications.add(notification);
160+
}
161+
162+
@override
163+
dynamic noSuchMethod(Invocation invocation) {
164+
fail('Unexpected invocation of ${invocation.memberName}');
165+
}
166+
167+
@override
168+
void recordAnalysisErrors(
169+
String pluginId,
170+
String filePath,
171+
List<protocol.AnalysisError> errorData,
172+
) {
173+
recordedErrors.putIfAbsent(pluginId, () => {})[filePath] = errorData;
147174
}
148175
}
149176

pkg/analysis_server/test/src/analytics/analytics_manager_test.dart

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ import 'package:analysis_server/src/analytics/percentile_calculator.dart';
1111
import 'package:analysis_server/src/plugin/plugin_manager.dart';
1212
import 'package:analysis_server/src/protocol_server.dart';
1313
import 'package:analyzer/dart/analysis/analysis_context_collection.dart';
14-
import 'package:analyzer/dart/analysis/context_root.dart' as analyzer;
1514
import 'package:analyzer/file_system/file_system.dart';
15+
import 'package:analyzer/instrumentation/service.dart';
1616
import 'package:analyzer/src/test_utilities/mock_sdk.dart';
1717
import 'package:analyzer_testing/resource_provider_mixin.dart';
1818
import 'package:http/src/response.dart' as http;
@@ -24,6 +24,8 @@ import 'package:unified_analytics/src/constants.dart';
2424
import 'package:unified_analytics/src/enums.dart';
2525
import 'package:unified_analytics/unified_analytics.dart';
2626

27+
import '../../mocks.dart';
28+
2729
void main() {
2830
defineReflectiveSuite(() {
2931
defineReflectiveTests(AnalyticsManagerTest);
@@ -494,8 +496,12 @@ class AnalyticsManagerTest with ResourceProviderMixin {
494496

495497
DateTime _now() => DateTime.now();
496498

497-
_MockPluginInfo _pluginInfo(String name) => _MockPluginInfo(
499+
PluginInfo _pluginInfo(String name) => PluginInfo(
498500
path.join('.pub-cache', 'pub.dev', name, 'tools', 'analyzer_plugin'),
501+
'/some/execution/path',
502+
'/some/packages/path',
503+
TestNotificationManager(),
504+
InstrumentationService.NULL_SERVICE,
499505
);
500506
}
501507

@@ -673,19 +679,6 @@ class _MockAnalytics implements NoOpAnalytics {
673679
void suppressTelemetry() {}
674680
}
675681

676-
class _MockPluginInfo implements PluginInfo {
677-
@override
678-
String pluginId;
679-
680-
_MockPluginInfo(this.pluginId);
681-
682-
@override
683-
Set<analyzer.ContextRoot> get contextRoots => {};
684-
685-
@override
686-
dynamic noSuchMethod(Invocation invocation) => super.noSuchMethod(invocation);
687-
}
688-
689682
class _MockPluginManager implements PluginManager {
690683
@override
691684
List<PluginInfo> plugins;

pkg/analysis_server/test/src/plugin/plugin_manager_test.dart

Lines changed: 3 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
import 'dart:io' as io;
66

7-
import 'package:analysis_server/src/plugin/notification_manager.dart';
87
import 'package:analysis_server/src/plugin/plugin_manager.dart';
98
import 'package:analyzer/file_system/physical_file_system.dart';
109
import 'package:analyzer/instrumentation/instrumentation.dart';
@@ -24,11 +23,12 @@ import 'package:test/test.dart';
2423
import 'package:test_reflective_loader/test_reflective_loader.dart';
2524
import 'package:watcher/watcher.dart' as watcher;
2625

26+
import '../../mocks.dart';
2727
import '../../support/sdk_paths.dart';
2828

2929
void main() {
3030
defineReflectiveSuite(() {
31-
defineReflectiveTests(DiscoveredPluginInfoTest);
31+
defineReflectiveTests(PluginInfoTest);
3232
defineReflectiveTests(PluginManagerTest);
3333
defineReflectiveTests(PluginManagerFromDiskTest);
3434
defineReflectiveTests(PluginSessionTest);
@@ -37,7 +37,7 @@ void main() {
3737
}
3838

3939
@reflectiveTest
40-
class DiscoveredPluginInfoTest with ResourceProviderMixin, _ContextRoot {
40+
class PluginInfoTest with ResourceProviderMixin, _ContextRoot {
4141
late TestNotificationManager notificationManager;
4242
String pluginPath = '/pluginDir';
4343
String executionPath = '/pluginDir/bin/plugin.dart';
@@ -859,43 +859,6 @@ class MinimalPlugin extends ServerPlugin {
859859
}
860860
}
861861

862-
class TestNotificationManager implements AbstractNotificationManager {
863-
List<Notification> notifications = <Notification>[];
864-
865-
Map<String, Map<String, List<AnalysisError>>> recordedErrors =
866-
<String, Map<String, List<AnalysisError>>>{};
867-
868-
List<String> pluginErrors = [];
869-
870-
@override
871-
void handlePluginError(String message) {
872-
pluginErrors.add(message);
873-
}
874-
875-
@override
876-
void handlePluginNotification(String pluginId, Notification notification) {
877-
notifications.add(notification);
878-
}
879-
880-
@override
881-
dynamic noSuchMethod(Invocation invocation) {
882-
fail('Unexpected invocation of ${invocation.memberName}');
883-
}
884-
885-
@override
886-
void recordAnalysisErrors(
887-
String pluginId,
888-
String filePath,
889-
List<AnalysisError> errorData,
890-
) {
891-
recordedErrors.putIfAbsent(
892-
pluginId,
893-
() => <String, List<AnalysisError>>{},
894-
)[filePath] =
895-
errorData;
896-
}
897-
}
898-
899862
class TestServerCommunicationChannel implements ServerCommunicationChannel {
900863
final PluginSession session;
901864
int closeCount = 0;

0 commit comments

Comments
 (0)