Sha256: 773b9d1025840b59cd35bf00f30a053f0f7a7151d6fbf444f26b49540df8e35f

Contents?: true

Size: 1.06 KB

Versions: 4

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

module Webdrone
  class Browser
    def clic
      @clic ||= Clic.new self
    end
  end

  class Clic
    attr_reader :a0

    def initialize(a0)
      @a0 = a0
    end

    def clic(text, n: 1, all: false, visible: true, scroll: false, parent: nil, color: '#af1616', times: nil, delay: nil, shot: nil, mark: false)
      item = @a0.find.send __callee__, text, n: n, all: all, visible: visible, scroll: scroll, parent: parent
      if mark
        @a0.mark.mark_item(item, color: color, times: times, delay: delay, shot: shot, text: text)
      elsif shot
        @a0.shot.screen shot.is_a?(String) ? shot : text
      end
      if item.is_a? Array
        item.each(&:click)
      else
        item.click
      end
    rescue StandardError => error
      Webdrone.report_error(@a0, error)
    end

    alias_method :id,     :clic
    alias_method :css,    :clic
    alias_method :link,   :clic
    alias_method :button, :clic
    alias_method :on,     :clic
    alias_method :option, :clic
    alias_method :xpath,  :clic

    protected :clic
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
webdrone-1.8.6 lib/webdrone/clic.rb
webdrone-1.8.4 lib/webdrone/clic.rb
webdrone-1.8.2 lib/webdrone/clic.rb
webdrone-1.8.0 lib/webdrone/clic.rb