Sha256: 79a29cde316925cc0821eaa344e35752d153955167ef7fc1a09cbcfcabaa8f38

Contents?: true

Size: 1.37 KB

Versions: 17

Compression:

Stored size: 1.37 KB

Contents

require "sauce/driver_pool"

require "selenium/client"
require "selenium/webdriver"

require 'selenium/webdriver/remote/http/persistent'

module Selenium
  module WebDriver
    class Proxy
      class << self
        alias :existing_json_create :json_create

        def json_create(data)
          dup = data.dup.delete_if {|k,v| v.nil?}
          dup.delete_if {|k,v| k == "autodetect" && v == false}
          existing_json_create(dup)
        end
      end
    end
  end
end


module Sauce
  class Selenium2
    attr_reader :config, :driver

    def initialize(opts={})
      @config = Sauce::Config.new(opts)
      http_client = ::Selenium::WebDriver::Remote::Http::Persistent.new
      http_client.timeout = 300 # Browser launch can take a while
      @driver = ::Selenium::WebDriver.for(:remote,
                      :url => "http://#{@config.username}:#{@config.access_key}@#{@config.host}:#{@config.port}/wd/hub",
                      :desired_capabilities => @config.to_desired_capabilities,
                      :http_client => http_client)
      http_client.timeout = 90 # Once the browser is up, commands should time out reasonably
    end

    def method_missing(meth, *args)
      @driver.send(meth, *args)
    end

    def session_id
      @driver.send(:bridge).session_id
    end

    def current_url
      @driver.current_url
    end

    def stop
      @driver.quit
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
sauce-3.1.2 lib/sauce/selenium.rb
sauce-3.1.1 lib/sauce/selenium.rb
sauce-3.1.0 lib/sauce/selenium.rb
sauce-3.0.6 lib/sauce/selenium.rb
sauce-3.0.5 lib/sauce/selenium.rb
sauce-3.0.4 lib/sauce/selenium.rb
sauce-3.0.2 lib/sauce/selenium.rb
sauce-3.0.1 lib/sauce/selenium.rb
sauce-3.0.0 lib/sauce/selenium.rb
sauce-2.5.2 lib/sauce/selenium.rb
sauce-3.0.0.beta.2 lib/sauce/selenium.rb
sauce-2.5.1 lib/sauce/selenium.rb
sauce-2.4.6 lib/sauce/selenium.rb
sauce-2.4.5 lib/sauce/selenium.rb
sauce-2.4.4 lib/sauce/selenium.rb
sauce-2.4.3 lib/sauce/selenium.rb
sauce-2.4.2 lib/sauce/selenium.rb