class Applitools::Selenium::ElementPositionProvider

@!visibility private

Attributes

driver[RW]
element[RW]

Public Class Methods

new(executor, passed_element) click to toggle source

Initialize a class instance.

@param [Applitools::Selenium::Driver] executor The wrapped Selenium driver instance. @param [Applitools::Selenium::Element] passed_element The wrapped Selenium element instance.

# File lib/applitools/selenium/element_position_provider.rb, line 13
def initialize(executor, passed_element)
  Applitools::ArgumentGuard.not_nil 'executor', executor
  Applitools::ArgumentGuard.not_nil 'passed_element', passed_element
  self.driver = executor
  self.element = passed_element
  self.element = Applitools::Selenium::Element.new(driver, element) unless
      element.is_a? Applitools::Selenium::Element
end

Public Instance Methods

current_position() click to toggle source

Gets the current position.

@return [Applitools::Location] The location.

# File lib/applitools/selenium/element_position_provider.rb, line 25
def current_position
  logger.info 'current_position() has called.'
  result = Applitools::Location.for element.scroll_left, element.scroll_top
  logger.info "Current position is #{result}"
  result
end
entire_size(_image_width, _image_height) click to toggle source

Gets the enitire size of the element.

@return [Applitools::RectangleSize] The size of the element.

# File lib/applitools/selenium/element_position_provider.rb, line 35
def entire_size(_image_width, _image_height)
  logger.info 'entire_size()'
  result = Applitools::RectangleSize.new(element.scroll_width, element.scroll_height)
  logger.info "Entire size: #{result}"
  result
end
force_offset()
Alias for: state
position=(location) click to toggle source
# File lib/applitools/selenium/element_position_provider.rb, line 52
def position=(location)
  logger.info "Scrolling element to #{location}"
  element.scroll_to location
  logger.info 'Done scrolling element!'
end
restore_state(value) click to toggle source
# File lib/applitools/selenium/element_position_provider.rb, line 48
def restore_state(value)
  self.position = value
end
state() click to toggle source
# File lib/applitools/selenium/element_position_provider.rb, line 42
def state
  current_position
end
Also aliased as: force_offset