Class: SharedTools::Tools::Browser::ClickTool

Inherits:
RubyLLM::Tool
  • Object
show all
Defined in:
lib/shared_tools/tools/browser/click_tool.rb

Overview

Examples:

browser = Watir::Browser.new(:chrome)
tool = SharedTools::Tools::Browser::ClickTool.new(browser:)
tool.execute(selector: "#some-id")
tool.execute(selector: ".some-class")
tool.execute(selector: "some text")
tool.execute(selector: "//div[@role='button']")

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(driver: nil, logger: nil) ⇒ ClickTool

Returns a new instance of ClickTool.



30
31
32
33
# File 'lib/shared_tools/tools/browser/click_tool.rb', line 30

def initialize(driver: nil, logger: nil)
  @driver = driver || default_driver
  @logger = logger || RubyLLM.logger
end

Class Method Details

.nameObject



14
# File 'lib/shared_tools/tools/browser/click_tool.rb', line 14

def self.name = 'browser_click'

Instance Method Details

#execute(selector:) ⇒ Object

Parameters:

  • CSS selector, ID, text content, or other identifier for the element to click.



36
37
38
39
40
# File 'lib/shared_tools/tools/browser/click_tool.rb', line 36

def execute(selector:)
  @logger.info("#{self.class.name}##{__method__} selector=#{selector.inspect}")

  @driver.click(selector:)
end