class Capybara::Selector::Filters::LocatorFilter

Public Class Methods

new(block, **options) click to toggle source
Calls superclass method
# File lib/capybara/selector/filters/locator_filter.rb, line 9
def initialize(block, **options)
  super(nil, nil, block, options)
end

Public Instance Methods

matches?(node, value, context = nil, exact:) click to toggle source
# File lib/capybara/selector/filters/locator_filter.rb, line 13
def matches?(node, value, context = nil, exact:)
  apply(node, value, true, context, exact: exact, format: context&.default_format)
rescue Capybara::ElementNotFound
  false
end

Private Instance Methods

apply(subject, value, skip_value, ctx, **options) click to toggle source
# File lib/capybara/selector/filters/locator_filter.rb, line 21
def apply(subject, value, skip_value, ctx, **options)
  return skip_value if skip?(value)

  filter_context(ctx).instance_exec(subject, value, **options, &@block)
end