Sha256: 40f44c92a7634248afde211d10854762389531e4d74d55f003d72f6bf0a471d6

Contents?: true

Size: 1.39 KB

Versions: 6

Compression:

Stored size: 1.39 KB

Contents

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

require "webrat/merb"

describe Webrat::MerbSession do
  it "should not pass empty params if data is and empty hash" do
    session = Webrat::MerbSession.new
    response = OpenStruct.new
    response.status = 200
    session.should_receive(:request).with('url', {:params=> nil, :method=>"GET", :headers=>nil}).and_return(response)
    session.get('url', {}, nil)
  end

  %w{post put delete}.each do |request_method|
    it "should call do request with method #{request_method.upcase} for a #{request_method} call" do
      session = Webrat::MerbSession.new
      response = OpenStruct.new
      response.status = 200

      session.should_receive(:request).with('url', {:params=>nil, :method=>request_method.upcase, :headers=>nil}).and_return(response)
      session.send(request_method, 'url', {}, nil)
    end
  end

  context "a session with a response" do
    before do
      @session = Webrat::MerbSession.new
      @response = OpenStruct.new
      @response.status = 200
      @response.body = 'test response'
      @session.instance_variable_set(:@response, @response)
    end

    it "should return body of a request as a response_body" do
      @session.response_body.should == @response.body
    end

    it "should return status of a request as a response_code" do
      @session.response_code.should == @response.status
    end
  end
end

Version data entries

6 entries across 6 versions & 4 rubygems

Version Path
davidtrogers-webrat-0.4.4.2 spec/private/merb/merb_session_spec.rb
diabolo-webrat-0.4.4.1 spec/private/merb/merb_session_spec.rb
diabolo-webrat-0.4.4.2 spec/private/merb/merb_session_spec.rb
diabolo-webrat-0.4.4 spec/private/merb/merb_session_spec.rb
raldred-webrat-0.4.4.2 spec/private/merb/merb_session_spec.rb
sr-webrat-0.4.4.1 spec/private/merb/merb_session_spec.rb