Module: Selenium::WebDriver::Interactions::PointerEventProperties
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Included In:
| |
Defined in: | rb/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb |
Constant Summary
-
VALID =
# File 'rb/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb', line 24{width: {'width' => {min: 0.0}}, height: {'height' => {min: 0.0}}, pressure: {'pressure' => {min: 0.0, max: 1.0}}, tangential_pressure: {'tangentialPressure' => {min: -1.0, max: 1.0}}, tilt_x: {'tiltX' => {min: -90, max: 90}}, tilt_y: {'tiltY' => {min: -90, max: 90}}, twist: {'twist' => {min: 0, max: 359}}, altitude_angle: {'altitudeAngle' => {min: 0.0, max: (Math::PI / 2)}}, azimuth_angle: {'azimuthAngle' => {min: 0.0, max: (Math::PI * 2)}}}.freeze
Instance Method Summary
Instance Method Details
#assert_number(num, min, max = nil) (private)
# File 'rb/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb', line 48
def assert_number(num, min, max = nil) return if num.nil? klass = min.is_a?(Integer) ? Integer : Numeric raise TypeError, "#{num} is not a #{klass}" unless num.is_a?(klass) raise ArgumentError, "#{num} is not greater than or equal to #{min}" if num < min raise ArgumentError, "#{num} is not less than or equal to #{max}" if max && num > max num end
#process_opts
# File 'rb/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb', line 34
def process_opts raise ArgumentError, "Unknown options found: #{@opts.inspect}" unless (@opts.keys - VALID.keys).empty? VALID.each_with_object({}) do |(key, val), hash| next unless @opts.key?(key) name = val.keys.first values = val.values.first hash[name] = assert_number(@opts[key], values[:min], values[:max]) end end