Sha256: a5f05d226e37371d3e298819b935f8664f5cdad89a43703256b24c64d1eb45a2

Contents?: true

Size: 1019 Bytes

Versions: 2

Compression:

Stored size: 1019 Bytes

Contents

require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe Rack::Obama do
  
  def do_call(content_type, request_method, &block)
    request = Rack::MockRequest.env_for("/", "CONTENT_TYPE" => content_type, :method => request_method)
    @response = Rack::Obama.new(block).call(request)    
  end

  %w{POST GET PUT DELETE HEAD}.each do |method|

    describe method do
  
      describe "text/html" do
      
        before do
          do_call("text/html", method) { |env| :result  }
        end

        it "forwards the request for processing" do
          @response.should == :result
        end

      end

      describe "nobel-prize/peace" do
    
        before do
          do_call("nobel-prize/peace", method) { |env| fail "Should not forward request for processing" }    
        end
    
        it "is accepted" do
          @response.should == ["202 Accepted", {"Content-Type" => "nobel-prize/peace", "Content-Length" => "0"}, []]
        end

      end
      
    end
    
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rack-obama-0.1.1 spec/rack-obama/obama_spec.rb
rack-obama-0.1.0 spec/rack-obama/obama_spec.rb