diff --git a/lib/capybara/queries/selector_query.rb b/lib/capybara/queries/selector_query.rb index 0fc553ae..92c050e4 100644 --- a/lib/capybara/queries/selector_query.rb +++ b/lib/capybara/queries/selector_query.rb @@ -225,12 +225,14 @@ module Capybara raise ArgumentError, "XPath expressions are not supported for the :class filter with CSS based selectors" end - css_selectors = expr.split(',').map(&:rstrip) - expr = css_selectors.map do |sel| - sel += "##{Capybara::Selector::CSS.escape(options[:id])}" if process_id - sel += css_from_classes(Array(options[:class])) if process_class - sel - end.join(", ") + if process_class || process_id + css_selectors = expr.split(',').map(&:rstrip) + expr = css_selectors.map do |sel| + sel += "##{Capybara::Selector::CSS.escape(options[:id])}" if process_id + sel += css_from_classes(Array(options[:class])) if process_class + sel + end.join(", ") + end expr end diff --git a/spec/shared_selenium_session.rb b/spec/shared_selenium_session.rb index 21b9376a..6a0c949e 100644 --- a/spec/shared_selenium_session.rb +++ b/spec/shared_selenium_session.rb @@ -273,7 +273,7 @@ RSpec.shared_examples "Capybara::Session" do |session, mode| expect(@animation_session).to have_no_link('transition me away', wait: 0.5) end - it "should disable CSS animations", :focus_ do + it "should disable CSS animations" do @animation_session.visit('with_animation') @animation_session.click_link('animate me away') expect(@animation_session).to have_no_link('animate me away', wait: 0.5)