Sha256: 52abbeee079c15bf0c9809c002ae0edcf1c7f53e6e2bde3b363a8e25add57dc8

Contents?: true

Size: 1.14 KB

Versions: 4

Compression:

Stored size: 1.14 KB

Contents

require "rails"

# Defualt the rails logger to nothing, each test shoould be
# responsible for setting up the logger
logger = ::Logger.new(nil) # change to STDOUT to see rails logs
Rails.logger = logger

class RailsApp < Rails::Application
  if ::Rails.version =~ /^3\./
    config.secret_token = '1e05af2b349457936a41427e63450937'
  else
    config.secret_key_base = '1e05af2b349457936a41427e63450937'
  end
  config.active_support.deprecation = :stderr
  config.eager_load = false
end

RailsApp.initialize!

module Support
  module Rails
    def dispatch_rails_request(path, additional_env_options = {})
      application = ::Rails.application
      env = application.respond_to?(:env_config) ? application.env_config.clone : application.env_defaults.clone
      env["rack.request.cookie_hash"] = {}.with_indifferent_access
      env["REMOTE_ADDR"] = "123.456.789.10"
      env["X-Request-Id"] = "unique-request-id-1234"
      env["action_dispatch.request_id"] = env["X-Request-Id"]
      env = env.merge(additional_env_options)
      ::Rack::MockRequest.new(application).get(path, env)
    end
  end
end

RSpec.configure do |config|
  config.include Support::Rails
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
timber-1.1.12 spec/support/rails.rb
timber-1.1.11 spec/support/rails.rb
timber-1.1.10 spec/support/rails.rb
timber-1.1.9 spec/support/rails.rb