Sha256: 3a6c6f7cd9e9fe5ae140529b2dc350b4439efaf649a1cd24977848bcbd30679e
Contents?: true
Size: 1.87 KB
Versions: 5
Compression:
Stored size: 1.87 KB
Contents
# encoding: utf-8 require 'spec_helper' describe Github::Request::Jsonize do let(:middleware) { described_class.new(lambda { |env| env }) } def process(body, content_type=nil) env = {:body => body, :request_headers => {} } env[:request_headers]['Content-Type'] = content_type if content_type middleware.call(env) end def result_body() result[:body] end def result_type() result[:request_headers]['Content-Type'] end context 'no body' do let(:result) { process(nil) } it "doesn't change body" do result_body.should be_nil end it "doesn't add content type" do result_type.should be_nil end end context 'empty body' do let(:result) { process('') } it "doesn't change body" do result_body.should be_empty end it "doesn't add conten type" do result_type.should be_nil end end context 'string body' do let(:result) { process('{"a":1}')} it "doesn't change body" do result_body.should eql '{"a":1}' end it "adds content type" do result_type.should eql 'application/json' end end context "object body" do let(:result) { process({:a => 1})} it "encodes body" do result_body.should eql '{"a":1}' end it "adds content type" do result_type.should eql 'application/json' end end context "empty object body" do let(:result) { process({})} it "encodes body" do result_body.should eql '{}' end it "adds content type" do result_type.should eql 'application/json' end end context 'object body with json type' do let(:result) { process({:a => 1}, 'application/json; charset=utf-8')} it "encodes body" do result_body.should eql '{"a":1}' end it "doesn't change content type" do result_type.should eql 'application/json; charset=utf-8' end end end # Github::Request::Jsonize
Version data entries
5 entries across 5 versions & 1 rubygems