-
-
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
[🚀 Feature] [py]: Support FedCM commands for python #14710
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
Bazel targets to test :
|
py/selenium/webdriver/common/driver_extensions/has_fedcm_dialog.py
Outdated
Show resolved
Hide resolved
py/selenium/webdriver/common/driver_extensions/has_fedcm_dialog.py
Outdated
Show resolved
Hide resolved
py/selenium/webdriver/common/driver_extensions/has_fedcm_dialog.py
Outdated
Show resolved
Hide resolved
@AutomatedTester the python remote integration tests are failing because we are using firefox in remote (expected error) - https://github.com/SeleniumHQ/selenium/actions/runs/11710156327/job/32616712125?pr=14710#step:16:3053 How can I skip it in remote, I am already using @pytest.mark.xfail_firefox(reason="FedCM not supported") |
You just need to use |
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.
Description
Addresses the python bindings related issue in #13449 and #12088.
Adds support for FedCM automation in python bindings.
Types of changes
Checklist
PR Type
Enhancement, Tests
Description
HasFedCmDialog
mixin to the Chrome WebDriver for handling FedCM dialogs.Account
andDialog
classes to represent and interact with FedCM dialogs.Changes walkthrough 📝
7 files
webdriver.py
Integrate FedCM dialog handling in Chrome WebDriver
py/selenium/webdriver/chrome/webdriver.py
HasFedCmDialog
mixin toWebDriver
class.has_fedcm_dialog.py
Add FedCM dialog management extension
py/selenium/webdriver/common/driver_extensions/has_fedcm_dialog.py
HasFedCmDialog
class for FedCM-specific functionality.account.py
Define FedCM account representation class
py/selenium/webdriver/common/fedcm/account.py
Account
class to represent FedCM account details.dialog.py
Implement FedCM dialog interaction class
py/selenium/webdriver/common/fedcm/dialog.py
Dialog
class for FedCM dialog interactions.command.py
Add FedCM commands for remote WebDriver
py/selenium/webdriver/remote/command.py
remote_connection.py
Map FedCM commands to HTTP endpoints
py/selenium/webdriver/remote/remote_connection.py
webdriver.py
Extend remote WebDriver with FedCM operations
py/selenium/webdriver/remote/webdriver.py
3 files
fedcm_tests.py
Add integration tests for FedCM dialog
py/test/selenium/webdriver/chrome/fedcm_tests.py
account_tests.py
Add unit tests for FedCM account properties
py/test/unit/selenium/webdriver/common/fedcm/account_tests.py
Account
class properties.dialog_tests.py
Add unit tests for FedCM dialog methods
py/test/unit/selenium/webdriver/common/fedcm/dialog_tests.py
Dialog
class methods.