class Dressing::Configuration

Constants

POTENTIAL_PORTS
SAUCE_OPTIONS

Attributes

access_key[RW]
browser[RW]
os[RW]
username[RW]
version[RW]

Public Class Methods

new() click to toggle source
# File lib/dressing/configuration.rb, line 28
def initialize
  self.browser           = ENV['SAUCE_BROWSER'] || 'Chrome'
  self.os                = ENV['SAUCE_OS'] || 'Windows 7'
  self.version           = ENV['SAUCE_VERSION']

  self.username          = ENV['SAUCE_USERNAME']
  self.access_key        = ENV['SAUCE_ACCESS_KEY']

  self.tunnel_identifier = ENV['SAUCE_TUNNEL_IDENTIFIER'] || ENV['TRAVIS_JOB_NUMBER']

  self.build             = ENV['SAUCE_BUILD'] || ENV['TRAVIS_BUILD_NUMBER']
  self.tags              = ENV['SAUCE_TAGS'] || travis_tags
end

Public Instance Methods

http_timeout() click to toggle source
# File lib/dressing/configuration.rb, line 46
def http_timeout
  300
end
remote_url() click to toggle source
# File lib/dressing/configuration.rb, line 42
def remote_url
  "http://#{username}:#{access_key}@ondemand.saucelabs.com/wd/hub"
end
to_capabilities() click to toggle source
# File lib/dressing/configuration.rb, line 50
def to_capabilities
  { 'browserName' => browser,
    'platform' => os,
    'version' => version }.merge(
      Hash[SAUCE_OPTIONS.map { |option| [option, __send__(:"#{option.gsub('-', '_')}")] }]
    ).keep_if { |key, value| !value.nil? }
end
travis_tags() click to toggle source
# File lib/dressing/configuration.rb, line 58
def travis_tags
  return nil unless ENV['TRAVIS']
  tags = ['travis']
  tags << "branch:#{ENV['TRAVIS_BRANCH']}"
  tags << "repo:#{ENV['TRAVIS_REPO_SLUG']}"
  tags << "commit:#{ENV['TRAVIS_COMMIT']}"
  tags
end