-
-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
[rb] implement navigation commands with BiDi #14094
Conversation
PR Review 🔍
|
PR Code Suggestions ✨
|
CI Failure Feedback 🧐(Checks updated until commit a863363)
✨ CI feedback usage guide:The CI feedback tool (
In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:
where Configuration options
See more information about the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
navigate and reload return NavigateResult objects; should I return it as a Struct or just ignore it since we aren't doing anything with it and not promising a return value?
I think it's fine not to return anything so far.
Should these BiDi classes be marked private api?
Yes, please.
I want to implement this as BrowsingContext instead of creating a new class and deprecating that one; do we need to be backwards compatible with this since we didn't mark it private api?
I think it should be fine to change it since it was part of BiDi which is not widely used.
/improve |
Thank you for your contribution @titusfortner ! Have a great day! |
User description
Description
BrowsingContext
Considerations
NavigateResult
objects; should I return it as a Struct or just ignore it since we aren't doing anything with it and not promising a return value?BrowsingContext
instead of creating a new class and deprecating that one; do we need to be backwards compatible with this since we didn't mark it private api?Motivation and Context
Ruby implementation of #13995
PR Type
Enhancement, Tests
Description
ContextManager
class to handle navigation commands using BiDi.BrowsingContext
class in favor ofContextManager
.BiDiBridge
with new navigation methods:get
,go_back
,go_forward
, andrefresh
.Changes walkthrough 📝
bidi.rb
Add `ContextManager` to autoload list in BiDi module
rb/lib/selenium/webdriver/bidi.rb
ContextManager
to autoload list.browsing_context.rb
Deprecate `BrowsingContext` class in favor of `ContextManager`
rb/lib/selenium/webdriver/bidi/browsing_context.rb
BrowsingContext
class.context_manager.rb
Implement `ContextManager` class with navigation methods
rb/lib/selenium/webdriver/bidi/context_manager.rb
ContextManager
class.navigate
,traverse_history
, andreload
.bidi_bridge.rb
Add navigation methods and `context_manager` to `BiDiBridge`
rb/lib/selenium/webdriver/remote/bidi_bridge.rb
get
,go_back
,go_forward
, andrefresh
.context_manager
method.navigation_spec.rb
Add integration tests for navigation methods
rb/spec/integration/selenium/webdriver/navigation_spec.rb