diff --git a/spec/httparty/request_spec.rb b/spec/httparty/request_spec.rb index 6d561e6..20f49dd 100644 --- a/spec/httparty/request_spec.rb +++ b/spec/httparty/request_spec.rb @@ -1,20 +1,6 @@ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper')) describe HTTParty::Request do - def stub_response(body, code = 200) - unless @http - @http = Net::HTTP.new('localhost', 80) - @request.stub!(:http).and_return(@http) - @request.stub!(:uri).and_return(URI.parse("http://foo.com/foobar")) - end - - response = Net::HTTPResponse::CODE_TO_OBJ[code.to_s].new("1.1", code, body) - response.stub!(:body).and_return(body) - - @http.stub!(:request).and_return(response) - response - end - before do @request = HTTParty::Request.new(Net::HTTP::Get, 'http://api.foo.com/v1', :format => :xml) end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index f70f45f..e5404db 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -10,15 +10,8 @@ def file_fixture(filename) open(File.join(File.dirname(__FILE__), 'fixtures', "#{filename.to_s}")).read end -def stub_http_response_with(filename) - format = filename.split('.').last.intern - data = file_fixture(filename) +Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].each {|f| require f} - response = Net::HTTPOK.new("1.1", 200, "Content for you") - response.stub!(:body).and_return(data) - - http_request = HTTParty::Request.new(Net::HTTP::Get, 'http://localhost', :format => format) - http_request.stub!(:perform_actual_request).and_return(response) - - HTTParty::Request.should_receive(:new).and_return(http_request) +Spec::Runner.configure do |config| + config.include HTTParty::StubResponse end diff --git a/spec/support/stub_response.rb b/spec/support/stub_response.rb new file mode 100644 index 0000000..3eb8042 --- /dev/null +++ b/spec/support/stub_response.rb @@ -0,0 +1,30 @@ +module HTTParty + module StubResponse + def stub_http_response_with(filename) + format = filename.split('.').last.intern + data = file_fixture(filename) + + response = Net::HTTPOK.new("1.1", 200, "Content for you") + response.stub!(:body).and_return(data) + + http_request = HTTParty::Request.new(Net::HTTP::Get, 'http://localhost', :format => format) + http_request.stub!(:perform_actual_request).and_return(response) + + HTTParty::Request.should_receive(:new).and_return(http_request) + end + + def stub_response(body, code = 200) + unless @http + @http = Net::HTTP.new('localhost', 80) + @request.stub!(:http).and_return(@http) + @request.stub!(:uri).and_return(URI.parse("http://foo.com/foobar")) + end + + response = Net::HTTPResponse::CODE_TO_OBJ[code.to_s].new("1.1", code, body) + response.stub!(:body).and_return(body) + + @http.stub!(:request).and_return(response) + response + end + end +end