class Selenium::WebDriver::Interactions::InputDevice
Superclass for the input device sources Manages Array of Interaction
instances for the device
@api private
Attributes
Public Class Methods
Source
# File lib/selenium/webdriver/common/interactions/input_device.rb, line 35 def initialize(name = nil) @name = name || SecureRandom.uuid @actions = [] end
Public Instance Methods
Source
# File lib/selenium/webdriver/common/interactions/input_device.rb, line 40 def add_action(action) raise TypeError, "#{action.inspect} is not a valid action" unless action.class < Interaction @actions << action end
Source
# File lib/selenium/webdriver/common/interactions/input_device.rb, line 46 def clear_actions @actions.clear end
Source
# File lib/selenium/webdriver/common/interactions/input_device.rb, line 50 def create_pause(duration = 0) add_action(Pause.new(self, duration)) end
Source
# File lib/selenium/webdriver/common/interactions/input_device.rb, line 54 def encode {type: type, id: name, actions: @actions.map(&:encode)} unless @actions.empty? end