Class: ShowMeTheCookies::Selenium

Inherits:
Object
  • Object
show all
Defined in:
lib/show_me_the_cookies/adapters/selenium.rb

Direct Known Subclasses

SeleniumChrome

Instance Method Summary collapse

Constructor Details

#initialize(driver) ⇒ Selenium

Returns a new instance of Selenium.



3
4
5
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 3

def initialize(driver)
  @browser = driver.browser
end

Instance Method Details



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 29

def create_cookie(cookie_name, cookie_value, options)
  unless on_the_page?
    fail(
      SeleniumSiteNotVisitedError,
      "Can't set a cookie on about:blank. Visit a url in your app first."
    )
  end
  @browser.manage.add_cookie(
    { name: cookie_name, value: cookie_value }.merge(options)
  )
end


25
26
27
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 25

def delete_cookie(cookie_name)
  @browser.manage.delete_cookie(cookie_name)
end

#expire_cookiesObject



17
18
19
20
21
22
23
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 17

def expire_cookies
  @browser.manage.all_cookies.each do |c|
    # we don't need to catch the expired cookies here
    # the browser will do it for us (duh!)
    @browser.manage.delete_cookie(c[:name]) if c[:expires].nil?
  end
end


7
8
9
10
11
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 7

def get_me_the_cookie(cookie_name)
  @browser.manage.cookie_named(cookie_name)
rescue ::Selenium::WebDriver::Error::NoSuchCookieError
  nil
end

#get_me_the_cookiesObject



13
14
15
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 13

def get_me_the_cookies
  @browser.manage.all_cookies
end