Skip to content

Register service extensions on a client that is connected to DDS #2388

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 42 commits into from
May 8, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
365a0ed
wip
elliette Mar 13, 2024
71eefee
Clean up
elliette Mar 14, 2024
207c6d9
Added a lot more logging
elliette Mar 18, 2024
4017b04
More logs and such
elliette Mar 19, 2024
bb51ce7
more logs
elliette Mar 19, 2024
6618001
Time for cleanup
elliette Mar 19, 2024
9ea40b1
Clean up
elliette Mar 19, 2024
cf329dd
Reset pubspec overrides
elliette Mar 19, 2024
0efc683
Add a new line in pubspec overrides
elliette Mar 19, 2024
9c09364
Implement yieldControlToDDS
elliette Mar 20, 2024
7c9ec16
Connect to DDS websocket with vmServiceConnectUri
elliette Mar 20, 2024
058b4db
Merge branch 'master' into dds-client
elliette Mar 20, 2024
8492849
Update CHANGELOG
elliette Mar 20, 2024
5b10085
Remove unused import
elliette Mar 20, 2024
5410498
Fix debug_service_test and cleanup
elliette Mar 22, 2024
1104b5d
Fix reload_correctness_test
elliette Mar 22, 2024
fcad8f4
Partially fix events_test
elliette Mar 22, 2024
23dd74b
Directly register all namespaced service extensions
elliette Mar 23, 2024
52feeb7
Pubspec overrides
elliette Mar 25, 2024
0502e78
Update versions for vm_service and vm_service_interface
elliette Mar 25, 2024
9d4b1ba
Format
elliette Mar 25, 2024
fa76c02
Trying to fix events_test
elliette Mar 25, 2024
77e0942
Fix reload_test
elliette Mar 25, 2024
0dcd257
Missing trailing comma
elliette Mar 25, 2024
a910bde
Trying to fix test
elliette Mar 25, 2024
821c155
Clean up
elliette Mar 25, 2024
338f038
Events tests passing
elliette Mar 26, 2024
19c4d6a
Analyzer error
elliette Mar 26, 2024
7539f21
More analyzer errors
elliette Mar 26, 2024
de41eca
Resolve merge conflicts
elliette Mar 26, 2024
c2d91c8
Added TODO
elliette Mar 26, 2024
6a94ad5
Some clean up
elliette Mar 26, 2024
d6ef4c4
Resolve merge conflicts
elliette Apr 24, 2024
5c9f737
Remove callServiceExtension from webdev
elliette Apr 24, 2024
749a55e
Add callServiceExtension back
elliette May 1, 2024
e93d469
Add test case back
elliette May 1, 2024
b8f2f39
Format
elliette May 1, 2024
329fecd
Skip other tests
elliette May 1, 2024
8ebf447
Fix restart when debugging webdev apps from VS Code
elliette May 6, 2024
018c9f2
Webdev creates its own connection with the VM service
elliette May 7, 2024
c845ba6
Remove webdev restart method
elliette May 7, 2024
d1b9b96
Fix and enable webdev tests
elliette May 7, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Events tests passing
  • Loading branch information
elliette committed Mar 26, 2024
commit 338f038d22da5e9336e16673b494f3b7f19db94c
17 changes: 11 additions & 6 deletions dwds/lib/src/dwds_vm_client.dart
Original file line number Diff line number Diff line change
Expand Up @@ -248,12 +248,17 @@ class DwdsVmClient {
static Map<String, Object> _extDwdsEmitEventHandler(
VmResponse request,
) {
emitEvent(
DwdsEvent(
request['type'] as String,
request['payload'] as Map<String, dynamic>,
),
);
final event = request['params'] as Map<String, dynamic>?;
if (event != null) {
final type = event['type'] as String?;
final payload = event['payload'] as Map<String, dynamic>?;
if (type != null && payload != null) {
emitEvent(
DwdsEvent(type, payload),
);
}
}

return {'result': Success().toJson()};
}

Expand Down
3 changes: 2 additions & 1 deletion dwds/test/events_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,7 @@ void main() {
() => keyboard.sendChord([Keyboard.alt, 'd']),
);
},
skip: 'https://github.com/dart-lang/webdev/issues/2394',
);

test('emits DEVTOOLS_LAUNCH event', () async {
Expand All @@ -181,7 +182,7 @@ void main() {
test('can emit event through service extension', () async {
final response = await expectEventDuring(
matchesEvent('foo-event', {'data': 1234}),
() => vmService.callServiceExtension(
() => fakeClient.callServiceExtension(
'ext.dwds.emitEvent',
args: {
'type': 'foo-event',
Expand Down