Sha256: 6e78fe48d571b122cea40a53066eff2692435fb7ad309e89671f0eafb5cfe125

Contents?: true

Size: 674 Bytes

Versions: 18

Compression:

Stored size: 674 Bytes

Contents

# This makes Capybara work with sites that switch between HTTP and HTTPS
# See http://github.com/jnicklas/capybara/issues#issue/85

module Capybara::RackTest::Browser::SslFix

  [:get, :post, :put, :delete].each do |method|
    define_method method do |*args|
      args[0] = path_to_ssl_aware_url(args[0])
      super(*args)
    end
  end

  private

  def path_to_ssl_aware_url(path)
    unless path =~ /:\/\//
      env = request.env
      path = "#{env["rack.url_scheme"]}://#{env["SERVER_NAME"]}#{path}"
    end
    path
  rescue Rack::Test::Error
    # no request yet
    path
  end

end

Capybara::RackTest::Browser.send :include, Capybara::RackTest::Browser::SslFix

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
galakei-0.15.2 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.15.1 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.15.0 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.14.4 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.14.3 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.14.2 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.14.1 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.14.0 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.7 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.6 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.5 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.4 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.3 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.2 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.1 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.13.0 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.12.1 spec/acceptance/support/capybara_ssl_fix.rb
galakei-0.12.0 spec/acceptance/support/capybara_ssl_fix.rb