diff --git a/lib/capybara/queries/selector_query.rb b/lib/capybara/queries/selector_query.rb index 2ca6ac9e..d5a1aa91 100644 --- a/lib/capybara/queries/selector_query.rb +++ b/lib/capybara/queries/selector_query.rb @@ -18,7 +18,7 @@ module Capybara @locator = args.shift @filter_block = filter_block - warn "Unused parameters passed to #{self.class.name} : #{args}" unless args.empty? + raise ArgumentError, "Unused parameters passed to #{self.class.name} : #{args}" unless args.empty? @expression = @selector.call(@locator, @options.merge(enable_aria_label: session_options.enable_aria_label)) diff --git a/lib/capybara/spec/session/first_spec.rb b/lib/capybara/spec/session/first_spec.rb index 3f42d14b..fc8f2d26 100644 --- a/lib/capybara/spec/session/first_spec.rb +++ b/lib/capybara/spec/session/first_spec.rb @@ -26,9 +26,10 @@ Capybara::SpecHelper.spec '#first' do expect(@session.first(@xpath).value).to eq('John') end - it "should warn when unused parameters are passed" do - expect_any_instance_of(Kernel).to receive(:warn).with(/Unused parameters passed.*unused text/) - @session.first(:css, 'h1', 'unused text') + it "should raise when unused parameters are passed" do + expect { + @session.first(:css, 'h1', 'unused text') + }.to raise_error ArgumentError, /Unused parameters passed.*unused text/ end context "with css selectors" do diff --git a/lib/capybara/spec/session/has_selector_spec.rb b/lib/capybara/spec/session/has_selector_spec.rb index 3c1e94cc..66f691fd 100644 --- a/lib/capybara/spec/session/has_selector_spec.rb +++ b/lib/capybara/spec/session/has_selector_spec.rb @@ -72,9 +72,10 @@ Capybara::SpecHelper.spec '#has_selector?' do expect(@session).not_to have_selector("//p//a", text: /Red$/) end - it "should warn when extra parameters passed" do - expect_any_instance_of(Kernel).to receive(:warn).with(/extra/) - expect(@session).to have_selector(:css, "p a#foo", 'extra') + it "should raise when extra parameters passed" do + expect { + expect(@session).to have_selector(:css, "p a#foo", 'extra') + }.to raise_error ArgumentError, /extra/ end end diff --git a/spec/capybara_spec.rb b/spec/capybara_spec.rb index cd107b5e..bc48a5fb 100644 --- a/spec/capybara_spec.rb +++ b/spec/capybara_spec.rb @@ -104,7 +104,7 @@ RSpec.describe Capybara do Capybara.default_host = old_default end - it "should warn if not a valid URL" do + it "should raise if not a valid URL" do expect { Capybara.default_host = "www.example.com" }.to raise_error(ArgumentError, /Capybara\.default_host should be set to a url/) end