Sha256: 825a7fefc52290423b19a45d7a41ed780a958732110ab617a7370e0b2c6891ed

Contents?: true

Size: 1.49 KB

Versions: 14

Compression:

Stored size: 1.49 KB

Contents

module Selenium
  module WebDriver

    #
    # Shared across bridges
    #
    # @private
    #

    module BridgeHelper

      def unwrap_script_result(arg)
        if arg.kind_of?(Array)
          arg.map { |e| unwrap_script_result(e) }
        else
          if arg.kind_of?(Hash) && arg.member?("ELEMENT")
            Element.new self, element_id_from(arg)
          else
            arg
          end
        end
      end

      def element_id_from(id)
        id['ELEMENT']
      end

      def parse_cookie_string(str)
        result = {
          'name'    => '',
          'value'   => '',
          'domain'  => '',
          'path'    => '',
          'expires' => '',
          'secure'  => false
        }

        str.split(";").each do |attribute|
          if attribute.include? "="
            key, value = attribute.strip.split("=", 2)
            if result['name'].empty?
              result['name']  = key
              result['value'] = value
            elsif key == 'domain' && value.strip =~ /^\.(.+)/
              result['domain'] = $1
            elsif key && value
              result[key] = value
            end
          elsif attribute == "secure"
            result['secure'] = true
          end

          unless [nil, "", "0"].include?(result['expires'])
            # firefox stores expiry as number of seconds
            result['expires'] = Time.at(result['expires'].to_i)
          end
        end

        result
      end

    end # BridgeHelper
  end # WebDriver
end # Selenium

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
selenium-webdriver-0.1.1 lib/selenium/webdriver/common/bridge_helper.rb
selenium-webdriver-0.1.0 lib/selenium/webdriver/common/bridge_helper.rb
selenium-webdriver-0.0.29 lib/selenium/webdriver/common/bridge_helper.rb
selenium-webdriver-0.0.28 lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.27 lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.26 lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.25 lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.24 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.23 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.22 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.21 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.20 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.19 common/src/rb/lib/selenium/webdriver/bridge_helper.rb
selenium-webdriver-0.0.18 common/src/rb/lib/selenium/webdriver/bridge_helper.rb