Module: Capybara::ActiveAdmin::Actions::Table

Defined in:
lib/capybara/active_admin/actions/table.rb

Instance Method Summary collapse

Instance Method Details

#click_table_header(text, options = {}) ⇒ Object

Parameters:

  • text (String)

    column header text.

  • options (Hash) (defaults to: {})

    options passed to find_table_header.



28
29
30
# File 'lib/capybara/active_admin/actions/table.rb', line 28

def click_table_header(text, options = {})
  find_table_header(text, options).find('a').click
end

#click_table_scope(text) ⇒ Object

Parameters:

  • text (String)

    exact text of the scope to click.



21
22
23
24
# File 'lib/capybara/active_admin/actions/table.rb', line 21

def click_table_scope(text)
  selector = "#{table_scopes_container_selector} > #{table_scope_selector}"
  page.find(selector, exact_text: text).click
end

#select_table_row(id: nil, index: nil) ⇒ Object

Raises:

  • (ArgumentError)


7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/capybara/active_admin/actions/table.rb', line 7

def select_table_row(id: nil, index: nil)
  raise ArgumentError, "can't use both :id and :index" if id && index
  raise ArgumentError, 'must provide :id or :index' if id.nil? && index.nil?

  if id
    find("input#batch_action_item_#{id}").click
    return
  end

  selector = %(input[id^="batch_action_item_"])
  find_all(selector, minimum: index + 1)[index].click
end