class Selenium::WebDriver::Interactions::PointerMove

def assert_source(source)

def assert_source(source)
  raise TypeError, "#{source.type} is not a valid input type" unless source.is_a? PointerInput
end

def encode

def encode
  process_opts.merge('type' => type.to_s,
                     'duration' => @duration.to_i,
                     'x' => @x_offset,
                     'y' => @y_offset,
                     'origin' => @origin)
end

def initialize(source, duration, x, y, **opts)

def initialize(source, duration, x, y, **opts)
  super(source)
  @duration = duration * 1000
  @x_offset = x
  @y_offset = y
  @origin = opts.delete(:element) || opts.delete(:origin) || :viewport
  @type = :pointerMove
  @opts = opts
end