Sha256: 47ccf8edf06c149ff9f49b11c72e2a8bd1ad8ff09053f0a81d93e107055db91b

Contents?: true

Size: 1011 Bytes

Versions: 67

Compression:

Stored size: 1011 Bytes

Contents

require 'webmachine'
require 'webmachine/adapters/rack_mapped'
require 'webmachine/rack_adapter_monkey_patch'
require 'rack/test'

module Webmachine
  module Adapters
    class TestResource < Webmachine::Resource
      def allowed_methods
        ["POST"]
      end

      def process_post
        response.body = request.env['FOO']
        true
      end
    end

    describe Rack do
      include ::Rack::Test::Methods

      let(:app) do
        pact_api = Webmachine::Application.new do |app|
          app.routes do
            add(['test'], TestResource)
          end
        end

        pact_api.configure do |config|
          config.adapter = :RackMapped
        end

        pact_api.adapter
      end

      let(:rack_env) do
        {
          'FOO' => 'foo'
        }
      end

      subject { post("/test", nil, rack_env) }

      it "passes the rack env through on the request" do
        expect(subject.status).to eq 200
        expect(subject.body).to eq 'foo'
      end
    end
  end
end

Version data entries

67 entries across 67 versions & 1 rubygems

Version Path
pact_broker-2.79.1 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.79.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.78.1 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.78.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.77.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.76.2 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.76.1 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.76.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.75.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.74.1 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.74.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.73.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.72.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.71.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.70.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.69.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.68.1 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.68.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.67.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb
pact_broker-2.66.0 spec/lib/webmachine/rack_adapter_monkey_patch_spec.rb