Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions py/selenium/webdriver/common/keys.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
# under the License.
"""The Keys implementation."""

import sys


class Keys:
"""Set of special keys codes."""
Expand Down Expand Up @@ -88,3 +90,5 @@ class Keys:
META = "\ue03d"
COMMAND = "\ue03d"
ZENKAKU_HANKAKU = "\ue040"

COMMAND_OR_CONTROL = COMMAND if sys.platform == "darwin" else CONTROL
10 changes: 10 additions & 0 deletions py/test/selenium/webdriver/common/typing_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -346,3 +346,13 @@ def test_should_type_an_integer(driver, pages):
element = driver.find_element(by=By.ID, value="keyReporter")
element.send_keys(1234)
assert element.get_attribute("value") == "1234"


def test_should_type_ctrl_or_command_based_on_os(driver, pages):
pages.load("javascriptPage.html")
element = driver.find_element(by=By.ID, value="keyReporter")
element.send_keys(1234)
assert element.get_attribute("value") == "1234"
element.send_keys(Keys.COMMAND_OR_CONTROL + "a")
element.send_keys(Keys.BACKSPACE)
assert element.get_attribute("value") == ""
Loading