[dotnet] [bidi] Support getting of client windows in browser module#15241
Conversation
|
Still in draft, seems Chrome/Edge doesn't implement it yet. We can ignore these browsers in tests, or wait until will be supported by all browsers. Hard topic. |
|
@nvborisenko Just to clarify the implementation state of BiDi, is this only available on Firefox? |
|
It seems like a lot of work and a lot of potential misses if we explicitly |
|
Ignoring tests per specific browser is already supported. The question is whether we should release something when some browser doesn't support it yet. |
|
Thank you, I understand better the concern. I think it is better for Selenium to avoid being the missing link in BiDi adoption. That is especially so for this command, since Firefox already supports it. |
|
Yes, in this particular case we can release. It is additional feature without any breaking change. |
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
|
CI failed not related to this PR. |
User description
Motivation and Context
Fixes #14533
Types of changes
Checklist
PR Type
Enhancement, Tests
Description
Added support for the
browser.getClientWindowsBiDi command.Implemented new converters and serializers for
ClientWindowandGetClientWindowsResult.Introduced new classes for
ClientWindow,ClientWindowInfo, andGetClientWindowsCommand.Added a test case for
GetClientWindowsAsyncwith browser-specific exclusions.Changes walkthrough 📝
8 files
Added converters for `ClientWindow` and `GetClientWindowsResult`.Registered new types forGetClientWindowsCommandand related results.Added JSON converter for `ClientWindow`.Added JSON converter for `GetClientWindowsResult`.Added `GetClientWindowsAsync` method to `BrowserModule`.Introduced `ClientWindow` class to represent client windows.Added `ClientWindowInfo` class and `ClientWindowState` enum.Implemented `GetClientWindowsCommand` and related result handling.1 files
Added test for `GetClientWindowsAsync` with browser exclusions.