Class: ShowMeTheCookies::Selenium

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

Defined Under Namespace

Classes: SiteNotVisitedError

Instance Method Summary collapse

Constructor Details

#initialize(driver) ⇒ Selenium

Returns a new instance of Selenium.



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

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

Instance Method Details



25
26
27
28
29
30
31
32
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 25

def create_cookie(cookie_name, cookie_value)
  unless is_on_the_page?
    raise ShowMeTheCookies::Selenium::SiteNotVisitedError.new(
      "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)
end


21
22
23
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 21

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

#expire_cookiesObject



14
15
16
17
18
19
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 14

def expire_cookies
  cookies_to_delete = @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


6
7
8
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 6

def get_me_the_cookie(cookie_name)
  @browser.manage.cookie_named(cookie_name)
end

#get_me_the_cookiesObject



10
11
12
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 10

def get_me_the_cookies
  @browser.manage.all_cookies
end

#is_on_the_page?Boolean

Returns:

  • (Boolean)


36
37
38
39
# File 'lib/show_me_the_cookies/adapters/selenium.rb', line 36

def is_on_the_page?
  current_url = @browser.current_url
  current_url && current_url != "" && current_url != "about:blank"
end