Sha256: 1972bb21f7f22af10b6a0553836a868463f6784af89dfcd83826abdb6d1470ab
Contents?: true
Size: 1.82 KB
Versions: 3
Compression:
Stored size: 1.82 KB
Contents
require 'spec_helper' describe HTTP::Options, "merge" do let(:opts) { HTTP::Options.new } let(:user_agent) { "RubyHTTPGem/#{HTTP::VERSION}" } it 'supports a Hash' do old_response = opts.response expect(opts.merge(:response => :body).response).to eq(:body) expect(opts.response).to eq(old_response) end it 'supports another Options' do merged = opts.merge(HTTP::Options.new(:response => :body)) expect(merged.response).to eq(:body) end it 'merges as excepted in complex cases' do # FIXME: yuck :( foo = HTTP::Options.new( :response => :body, :params => {:baz => 'bar'}, :form => {:foo => 'foo'}, :body => "body-foo", :headers => {:accept => "json", :foo => 'foo'}, :proxy => {}, :callbacks => {:request => ["common"], :response => ["foo"]}) bar = HTTP::Options.new( :response => :parsed_body, :params => {:plop => 'plip'}, :form => {:bar => 'bar'}, :body => "body-bar", :headers => {:accept => "xml", :bar => 'bar'}, :proxy => {:proxy_address => "127.0.0.1", :proxy_port => 8080}, :callbacks => {:request => ["common"], :response => ["bar"]}) expect(foo.merge(bar).to_hash).to eq( :response => :parsed_body, :params=>{:plop=>"plip"}, :form => {:bar => 'bar'}, :body => "body-bar", :headers => {:accept => "xml", :foo => "foo", :bar => 'bar', "User-Agent" => user_agent}, :proxy => {:proxy_address => "127.0.0.1", :proxy_port => 8080}, :callbacks => {:request => ["common"], :response => ["foo", "bar"]}, :follow => nil, :socket_class => described_class.default_socket_class, :ssl_socket_class => described_class.default_ssl_socket_class, :ssl_context => nil ) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
http-0.5.1 | spec/http/options/merge_spec.rb |
http-0.5.0 | spec/http/options/merge_spec.rb |
http-0.5.0.pre2 | spec/http/options/merge_spec.rb |