Class: TestCentricity::WebDriverConnect

Inherits:
Object
  • Object
show all
Includes:
Capybara::DSL
Defined in:
lib/testcentricity_web/webdriver_helper.rb

Class Method Summary collapse

Class Method Details

.initialize_web_driver(environment) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/testcentricity_web/webdriver_helper.rb', line 5

def self.initialize_web_driver(environment)
  browser = ENV['WEB_BROWSER']

  # assume that we're testing within a local desktop web browser
  Environ.set_platform(:desktop)
  Environ.set_browser(browser)
  Environ.set_device(false)
  Environ.set_device_type('browser')

  case browser.downcase.to_sym
    when :browserstack
      initialize_browserstack
    when :crossbrowser
      initialize_crossbrowser
    when :saucelabs
      initialize_saucelabs
    else
      initialize_local_browser(browser)
  end

  (environment.hostname.length > 0) ?
      Capybara.app_host = "#{environment.protocol}://#{environment.hostname}/#{environment.base_url}" :
      Capybara.app_host = "#{environment.protocol}://#{environment.base_url}"

  # set browser window size only if testing with a desktop web browser
  if Environ.is_desktop?
    (ENV['BROWSER_SIZE'] == 'max') ?
        Browsers.maximize_browser :
        Browsers.set_browser_window_size(Browsers.browser_size(browser, ENV['ORIENTATION']))
  end

  puts "Using #{Environ.browser.to_s} browser"
end