module DockTest::DSL

Attributes

oauth_consumer_key[RW]

oauth settings

oauth_consumer_secret[RW]

oauth settings

url[R]

Public Instance Methods

configure(&block) click to toggle source
# File lib/dock_test/dsl.rb, line 68
def configure(&block)
  block.call(DockTest)
end
localhost?() click to toggle source
# File lib/dock_test/dsl.rb, line 44
def localhost?
  @url && ['127.0.0.1', 'localhost'].include?(URI.parse(@url).host)
end
mount_path() click to toggle source
# File lib/dock_test/dsl.rb, line 35
def mount_path
  p = URI.parse(@url).path
  p.empty? ? '/' : p
end
oauth?() click to toggle source

if the current dock_test environment requires oauth

# File lib/dock_test/dsl.rb, line 31
def oauth?
  oauth_consumer_key && oauth_consumer_secret
end
port() click to toggle source
# File lib/dock_test/dsl.rb, line 40
def port
  URI.parse(@url).port
end
skippy=(skippy) click to toggle source
# File lib/dock_test/dsl.rb, line 48
def skippy=(skippy)
  @skippy = skippy
end
skippy?() click to toggle source
# File lib/dock_test/dsl.rb, line 52
def skippy?
  @skippy || false
end
url=(value) click to toggle source

sets the test url also creates a new webrick server process

# File lib/dock_test/dsl.rb, line 7
def url=(value)
  @url = value

  if localhost? && @server_thread.nil?
    require "rack"
    require 'webrick'

    ARGV.clear # clear ARGV as it is used by Rack to configure server

    server = WEBrick::HTTPServer.new(:Port => port, AccessLog: []).tap do |server|
      server.mount mount_path, Rack::Handler::WEBrick, Rack::Server.new.app
    end
    @server_thread = Thread.new { server.start }
    trap('INT') do
      server.shutdown
      exit
    end
  end
end
verify_mode() click to toggle source
# File lib/dock_test/dsl.rb, line 60
def verify_mode
  if @verify_ssl.nil? || @verify_ssl
    OpenSSL::SSL::VERIFY_PEER
  else
    OpenSSL::SSL::VERIFY_NONE
  end
end
verify_ssl=(verify_ssl) click to toggle source
# File lib/dock_test/dsl.rb, line 56
def verify_ssl=(verify_ssl)
  @verify_ssl = verify_ssl
end