Sha256: 6272106e76d23ae59aec073d4c6b6678bcb9e6e1e7da74d77722016182183a5a

Contents?: true

Size: 892 Bytes

Versions: 19

Compression:

Stored size: 892 Bytes

Contents

# frozen_string_literal: true

require "webrick"
require "webrick/ssl"

require "support/black_hole"
require "support/dummy_server/servlet"
require "support/servers/config"
require "support/servers/runner"
require "support/ssl_helper"

class DummyServer < WEBrick::HTTPServer
  include ServerConfig

  CONFIG = {
    :BindAddress  => "127.0.0.1",
    :Port         => 0,
    :AccessLog    => BlackHole,
    :Logger       => BlackHole
  }.freeze

  SSL_CONFIG = CONFIG.merge(
    :SSLEnable            => true,
    :SSLStartImmediately  => true
  ).freeze

  def initialize(options = {}) # rubocop:disable Style/OptionHash
    super(options[:ssl] ? SSL_CONFIG : CONFIG)
    mount("/", Servlet)
  end

  def endpoint
    "#{scheme}://#{addr}:#{port}"
  end

  def scheme
    config[:SSLEnable] ? "https" : "http"
  end

  def ssl_context
    @ssl_context ||= SSLHelper.server_context
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
http-4.4.1 spec/support/dummy_server.rb
http-4.4.0 spec/support/dummy_server.rb
http-4.3.0 spec/support/dummy_server.rb
http-4.2.0 spec/support/dummy_server.rb
http-4.1.1 spec/support/dummy_server.rb
http-4.1.0 spec/support/dummy_server.rb
http-4.0.5 spec/support/dummy_server.rb
http-4.0.4 spec/support/dummy_server.rb
http-5.0.0.pre spec/support/dummy_server.rb
http-4.0.3 spec/support/dummy_server.rb
http-4.0.2 spec/support/dummy_server.rb
http-4.0.1 spec/support/dummy_server.rb
http-4.0.0 spec/support/dummy_server.rb
http-3.3.0 spec/support/dummy_server.rb
http-3.2.1 spec/support/dummy_server.rb
http-3.2.0 spec/support/dummy_server.rb
http-3.1.0 spec/support/dummy_server.rb
http-3.0.0 spec/support/dummy_server.rb
http-3.0.0.pre spec/support/dummy_server.rb