Module Selenium::Client::Base
In: lib/selenium/client/base.rb

Driver constructor and session management commands

Original code by Aslak Hellesoy and Darren Hobbs

Methods

Included Modules

Selenium::Client::Protocol Selenium::Client::GeneratedDriver Selenium::Client::Extensions Selenium::Client::Idiomatic

Attributes

browser_string  [R] 

Public Class methods

[Source]

    # File lib/selenium/client/base.rb, line 15
15:       def initialize(server_host, server_port, browser_string, browser_url, timeout_in_seconds=300)
16:         @server_host = server_host
17:         @server_port = server_port
18:         @browser_string = browser_string
19:         @browser_url = browser_url
20:         @timeout = timeout_in_seconds
21:         @extension_js = ""
22:         @session_id = nil
23:       end

Public Instance methods

[Source]

    # File lib/selenium/client/base.rb, line 50
50:       def chrome_backend?
51:         ["*chrome", "*firefox", "*firefox2", "*firefox3"].include?(@browser_string)
52:       end

[Source]

    # File lib/selenium/client/base.rb, line 37
37:       def close_current_browser_session
38:         remote_control_command "testComplete" if @session_id
39:         @session_id = nil
40:       end

[Source]

    # File lib/selenium/client/base.rb, line 54
54:       def javascript_extension=(new_javascript_extension)
55:         @extension_js = new_javascript_extension
56:             end

[Source]

    # File lib/selenium/client/base.rb, line 25
25:       def session_started?
26:         not @session_id.nil?
27:       end

[Source]

    # File lib/selenium/client/base.rb, line 58
58:       def set_extension_js(new_javascript_extension)
59:               javascript_extension = new_javascript_extension
60:       end

[Source]

    # File lib/selenium/client/base.rb, line 42
42:       def start
43:         start_new_browser_session
44:       end

[Source]

    # File lib/selenium/client/base.rb, line 29
29:       def start_new_browser_session
30:         result = string_command "getNewBrowserSession", [@browser_string, @browser_url, @extension_js]
31:         @session_id = result
32:         # Consistent timeout on the remote control and driver side.
33:         # Intuitive and this is what you want 90% of the time
34:         self.remote_control_timeout_in_seconds = @timeout 
35:       end

[Source]

    # File lib/selenium/client/base.rb, line 46
46:       def stop
47:               close_current_browser_session
48:       end

[Validate]