[js][bidi]: implement bidi getClientWindows
command in browser module
#15248
+99
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
User description
Thanks for contributing to Selenium!
A PR well described will help maintainers to quickly review and merge it
Before submitting your PR, please check our contributing guidelines.
Avoid large PRs, help reviewers by making them as simple and short as possible.
Motivation and Context
Implemented
getClientWindows
method in JavaScript for BiDi browser module and added a test.BiDi spec - https://w3c.github.io/webdriver-bidi/#command-browser-getClientWindows
Types of changes
Checklist
PR Type
Enhancement, Tests
Description
Implemented
getClientWindows
command in the BiDi browser module.Added
ClientWindowInfo
class to represent client window details.Introduced tests for
getClientWindows
functionality in the BiDi browser.Enhanced BiDi browser module with window state constants.
Changes walkthrough 📝
browser.js
Add `getClientWindows` method to BiDi browser
javascript/node/selenium-webdriver/bidi/browser.js
getClientWindows
method to fetch client window details.WindowState
andClientWindowInfo
for window handling.WindowState
.clientWindowInfo.js
Introduce `ClientWindowInfo` class and `WindowState` constants
javascript/node/selenium-webdriver/bidi/clientWindowInfo.js
ClientWindowInfo
class for client window representation.WindowState
constants for window states.fromJson
method for JSON deserialization.browser_test.js
Add tests for `getClientWindows` in BiDi browser
javascript/node/selenium-webdriver/test/bidi/browser_test.js
getClientWindows
functionality.