Class: Applitools::EyesKeyboard

Inherits:
Object
  • Object
show all
Defined in:
lib/eyes_selenium/eyes/eyes_keyboard.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(driver, keyboard) ⇒ EyesKeyboard

Returns a new instance of EyesKeyboard.



4
5
6
7
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 4

def initialize(driver, keyboard)
  @driver = driver
  @keyboard = keyboard
end

Instance Attribute Details

#driverObject (readonly)

Returns the value of attribute driver.



2
3
4
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 2

def driver
  @driver
end

#keyboardObject (readonly)

Returns the value of attribute keyboard.



2
3
4
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 2

def keyboard
  @keyboard
end

Instance Method Details

#press(key) ⇒ Object



18
19
20
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 18

def press(key)
  keyboard.press(key)
end

#release(key) ⇒ Object



22
23
24
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 22

def release(key)
  keyboard.release(key)
end

#send_keys(*keys) ⇒ Object



9
10
11
12
13
14
15
16
# File 'lib/eyes_selenium/eyes/eyes_keyboard.rb', line 9

def send_keys(*keys)
  active_element = Applitools::Element.new(driver, driver.switch_to.active_element)
  current_control = active_element.region
  Selenium::WebDriver::Keys.encode(keys).each do |key|
    driver.eyes.user_inputs << Applitools::TextTrigger.new(key.to_s, current_control)
  end
  keyboard.send_keys(*keys)
end