2018-04-18 13:45:35 -07:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2016-01-29 16:31:35 -08:00
|
|
|
module Capybara
|
|
|
|
module Queries
|
|
|
|
class MatchQuery < Capybara::Queries::SelectorQuery
|
|
|
|
def visible
|
2018-01-13 13:06:03 -08:00
|
|
|
options.key?(:visible) ? super : :all
|
2016-01-29 16:31:35 -08:00
|
|
|
end
|
|
|
|
|
2018-01-09 14:05:50 -08:00
|
|
|
private
|
2016-01-29 16:31:35 -08:00
|
|
|
|
2018-05-26 10:26:44 -07:00
|
|
|
def assert_valid_keys
|
|
|
|
invalid_options = @options.keys & COUNT_KEYS
|
|
|
|
unless invalid_options.empty?
|
|
|
|
raise ArgumentError, "Match queries don't support quantity options. Invalid keys - #{invalid_options.join(', ')}"
|
|
|
|
end
|
2018-09-24 09:43:46 -07:00
|
|
|
|
2018-05-26 10:26:44 -07:00
|
|
|
super
|
|
|
|
end
|
|
|
|
|
2016-01-29 16:31:35 -08:00
|
|
|
def valid_keys
|
2016-09-23 09:56:07 -07:00
|
|
|
super - COUNT_KEYS
|
2016-01-29 16:31:35 -08:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2018-01-09 14:05:50 -08:00
|
|
|
end
|