1
0
Fork 0
mirror of https://github.com/jnunemaker/httparty synced 2023-03-27 23:23:07 -04:00

Added specs for response class.

This commit is contained in:
John Nunemaker 2009-01-31 01:56:58 -05:00
parent b7cd64e76f
commit 54ed707df5
2 changed files with 54 additions and 1 deletions

View file

@ -3,7 +3,7 @@ module HTTParty
attr_accessor :body, :code, :headers
attr_reader :delegate
def initialize(delegate, body, code, headers)
def initialize(delegate, body, code, headers={})
@delegate = delegate
@body = body
@code = code

View file

@ -0,0 +1,53 @@
require File.join(File.dirname(__FILE__), '..', 'spec_helper')
describe HTTParty::Response do
describe "initialization" do
before do
@response_object = {'foo' => 'bar'}
@body = "{foo:'bar'}"
@code = 200
@response = HTTParty::Response.new(@response_object, @body, @code)
end
it "should set delegate" do
@response.delegate.should == @response_object
end
it "should set body" do
@response.body.should == @body
end
it "should set code" do
@response.code.should == @code
end
end
it "should be able to set headers during initialization" do
response = HTTParty::Response.new({'foo' => 'bar'}, "{foo:'bar'}", 200, {'foo' => 'bar'})
response.headers.should == {'foo' => 'bar'}
end
it "should send missing methods to delegate" do
response = HTTParty::Response.new({'foo' => 'bar'}, "{foo:'bar'}", 200)
response['foo'].should == 'bar'
end
it "should be able to iterate delegate if it is array" do
response = HTTParty::Response.new([{'foo' => 'bar'}, {'foo' => 'baz'}], "[{foo:'bar'}, {foo:'baz'}]", 200)
response.size.should == 2
lambda {
response.each { |item| }
}.should_not raise_error
end
xit "should allow hashes to be accessed with dot notation" do
response = HTTParty::Response.new({'foo' => 'bar'}, "{foo:'bar'}", 200)
response.foo.should == 'bar'
end
xit "should allow nested hashes to be accessed with dot notation" do
response = HTTParty::Response.new({'foo' => {'bar' => 'baz'}}, "{foo: {bar:'baz'}}", 200)
response.foo.should == {'bar' => 'baz'}
response.foo.bar.should == 'baz'
end
end