@@ -121,7 +121,7 @@ void main() {
121
121
await adapter.terminateRequest (MockRequest (), TerminateArguments (restart: false ), terminateCompleter.complete);
122
122
await terminateCompleter.future;
123
123
124
- expect (adapter.flutterRequests , contains ('app.stop' ));
124
+ expect (adapter.dapToFlutterRequests , contains ('app.stop' ));
125
125
});
126
126
127
127
test ('does not call "app.stop" on terminateRequest if app was not started' , () async {
@@ -145,7 +145,7 @@ void main() {
145
145
await adapter.terminateRequest (MockRequest (), TerminateArguments (restart: false ), terminateCompleter.complete);
146
146
await terminateCompleter.future;
147
147
148
- expect (adapter.flutterRequests , isNot (contains ('app.stop' )));
148
+ expect (adapter.dapToFlutterRequests , isNot (contains ('app.stop' )));
149
149
});
150
150
});
151
151
@@ -210,7 +210,39 @@ void main() {
210
210
await adapter.terminateRequest (MockRequest (), TerminateArguments (restart: false ), terminateCompleter.complete);
211
211
await terminateCompleter.future;
212
212
213
- expect (adapter.flutterRequests, contains ('app.detach' ));
213
+ expect (adapter.dapToFlutterRequests, contains ('app.detach' ));
214
+ });
215
+ });
216
+
217
+ group ('forwards events' , () {
218
+ test ('app.webLaunchUrl' , () async {
219
+ final MockFlutterDebugAdapter adapter = MockFlutterDebugAdapter (
220
+ fileSystem: MemoryFileSystem .test (style: fsStyle),
221
+ platform: platform,
222
+ );
223
+
224
+ // Simulate Flutter asking for a URL to be launched.
225
+ adapter.simulateStdoutMessage (< String , Object ? > {
226
+ 'event' : 'app.webLaunchUrl' ,
227
+ 'params' : < String , Object ? > {
228
+ 'url' : 'http://localhost:123/' ,
229
+ 'launched' : false ,
230
+ }
231
+ });
232
+
233
+ // Allow the handler to be processed.
234
+ await pumpEventQueue (times: 5000 );
235
+
236
+ // Find the forwarded event.
237
+ final Map <String , Object ?> message = adapter.dapToClientMessages.singleWhere ((Map <String , Object ?> data) => data['event' ] == 'flutter.forwardedEvent' );
238
+ // Ensure the body of the event matches the original event sent by Flutter.
239
+ expect (message['body' ], < String , Object ? > {
240
+ 'event' : 'app.webLaunchUrl' ,
241
+ 'params' : < String , Object ? > {
242
+ 'url' : 'http://localhost:123/' ,
243
+ 'launched' : false ,
244
+ }
245
+ });
214
246
});
215
247
});
216
248
@@ -238,7 +270,7 @@ void main() {
238
270
// Allow the handler to be processed.
239
271
await pumpEventQueue (times: 5000 );
240
272
241
- final Map <String , Object ?> message = adapter.flutterMessages .singleWhere ((Map <String , Object ?> data) => data['id' ] == requestId);
273
+ final Map <String , Object ?> message = adapter.dapToFlutterMessages .singleWhere ((Map <String , Object ?> data) => data['id' ] == requestId);
242
274
expect (message['result' ], 'http://mapped-host:123/' );
243
275
});
244
276
});
0 commit comments