def extract_config options
      @username = options[:username]
      @access_key = options[:access_key]
      @cli_options = options[:connect_options]
      @sc4_executable = options[:sauce_connect_4_executable]
      @skip_connection_test = options[:skip_connection_test]
      @quiet = options[:quiet]
      @timeout = options.fetch(:timeout) { TIMEOUT }

      unless options.fetch(:skip_sauce_config, false)
        require 'sauce/config'
        @config = Sauce::Config.new(options)
        @username ||= @config.username
        @access_key ||= @config.access_key
        @cli_options ||= @config[:connect_options]
        @sc4_executable ||= @config[:sauce_connect_4_executable]
        @skip_connection_test = @config[:skip_connection_test]  
      end
    end
def extract_config options
      @username = options[:username]
      @access_key = options[:access_key]
      @cli_options = options[:connect_options]
      @sc4_executable = options[:sauce_connect_4_executable]
      @skip_connection_test = options[:skip_connection_test]
      @quiet = options[:quiet]
      @timeout = options.fetch(:timeout) { TIMEOUT }

      unless options.fetch(:skip_sauce_config, false)
        require 'sauce/config'
        @config = Sauce::Config.new(options)
        @username ||= @config.username
        @access_key ||= @config.access_key
        @cli_options ||= @config[:connect_options]
        @sc4_executable ||= @config[:sauce_connect_4_executable]
        @skip_connection_test = @config[:skip_connection_test]  
      end
    end
extract options from the options hash with highest priority over Sauce.config
 but fall back on Sauce.config otherwise