class Capybara::Selector::ExpressionFilter

Public Instance Methods

apply_filter(expr, value) click to toggle source
# File lib/capybara/selector/expression_filter.rb, line 8
def apply_filter(expr, value)
  return expr if skip?(value)

  if !valid_value?(value)
    msg = "Invalid value #{value.inspect} passed to expression filter #{@name} - "
    if default?
      warn msg + "defaulting to #{default}"
      value = default
    else
      warn msg + "skipping"
      return expr
    end
  end

  @block.call(expr, value)
end