Sha256: 75ce624db8c3b60d207263c6af8f997058b7a93fcd9d7c336c3e4d3efe616a07

Contents?: true

Size: 1.26 KB

Versions: 12

Compression:

Stored size: 1.26 KB

Contents

# Encoding: utf-8

require 'selenium_connect/runners/firefox'
require 'selenium_connect/runners/ie'
require 'selenium_connect/runners/chrome'
require 'selenium_connect/runners/phantomjs'
require 'selenium_connect/runners/no_browser'
require 'selenium_connect/runners/saucelabs'

# selenium connect
class SeleniumConnect
  # Initializes the driver
  class Runner
    attr_reader :driver, :config

    def initialize(config)
      @config = config
      @driver = init_driver
    end

    private

    def set_server_url
      "http://#{config.host}:#{config.port}/wd/hub"
    end

    def init_driver
      if config.host == 'saucelabs'
        Saucelabs.new(config).launch
      else
        Selenium::WebDriver.for(
          :remote,
          url: set_server_url,
          desired_capabilities: get_browser
        )
      end
    end

    def get_browser
      browser = browsers.find { |found_browser| found_browser.match? }
      browser.launch
    end

    def browsers
      firefox     = Firefox.new(config)
      ie          = InternetExplorer.new(config)
      chrome      = Chrome.new(config)
      phantomjs   = PhantomJS.new(config)
      no_browser  = NoBrowser.new(config)
      [firefox, ie, chrome, phantomjs, no_browser]
    end

  end # Runner
end # SeleniumConnect

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
selenium-connect-3.7.1 lib/selenium_connect/runner.rb
selenium-connect-3.7.0 lib/selenium_connect/runner.rb
selenium-connect-3.6.0 lib/selenium_connect/runner.rb
selenium-connect-3.5.0 lib/selenium_connect/runner.rb
selenium-connect-3.4.0 lib/selenium_connect/runner.rb
selenium-connect-3.3.1 lib/selenium_connect/runner.rb
selenium-connect-3.3.0 lib/selenium_connect/runner.rb
selenium-connect-3.2.0 lib/selenium_connect/runner.rb
selenium-connect-3.1.2 lib/selenium_connect/runner.rb
selenium-connect-3.1.1 lib/selenium_connect/runner.rb
selenium-connect-3.1.0 lib/selenium_connect/runner.rb
selenium-connect-3.0.0 lib/selenium_connect/runner.rb