diff --git a/rb/lib/selenium/webdriver/remote/bridge.rb b/rb/lib/selenium/webdriver/remote/bridge.rb index d36b0cf3e66dc..249c8dfb9d399 100644 --- a/rb/lib/selenium/webdriver/remote/bridge.rb +++ b/rb/lib/selenium/webdriver/remote/bridge.rb @@ -385,9 +385,10 @@ def add_cookie(cookie) end def delete_cookie(name) + raise ArgumentError, 'Cookie name cannot be null or empty' if name.nil? || name.strip.empty? execute :delete_cookie, name: name end - + def cookie(name) execute :get_cookie, name: name end diff --git a/rb/spec/integration/selenium/webdriver/manager_spec.rb b/rb/spec/integration/selenium/webdriver/manager_spec.rb index d8d9d791ddc74..3785a4c95742b 100644 --- a/rb/spec/integration/selenium/webdriver/manager_spec.rb +++ b/rb/spec/integration/selenium/webdriver/manager_spec.rb @@ -242,6 +242,11 @@ module WebDriver expect(driver.manage.all_cookies.find { |c| c[:name] == 'foo' }).to be_nil end + it 'throws an error when cookie name is an empty string' do + expect { driver.manage.delete_cookie('') } + .to raise_error(ArgumentError, /Cookie name cannot be null or empty/) + end + it 'deletes all' do driver.manage.add_cookie name: 'foo', value: 'bar' driver.manage.add_cookie name: 'bar', value: 'foo'