Sha256: 36e4ee5aff791bfc03da0bc07c8556d652965ea9899f23d313aabc049250f9d3

Contents?: true

Size: 1.03 KB

Versions: 2

Compression:

Stored size: 1.03 KB

Contents

require 'spec_helper'

describe ApiClient::Parser do
  describe "#_response" do
    context "with a valid json response" do
      before :each do
        FakeWeb.register_uri(:post, "http://api.example.com/user/5",
                             :body => { :a => :b }.to_json,
                             :status => "201")
        @response = ApiClient::Base._post('http://api.example.com/user/5', {})
      end

      it "should return the response code and the body parsed" do
        ApiClient::Base._response(@response).should == ['201', { "a" => "b" }]
      end
    end

    context "with a invalid json response" do
      before :each do
        FakeWeb.register_uri(:post, "http://api.example.com/user/5",
                             :body => "wrong",
                             :status => "201")
        @response = ApiClient::Base._post('http://api.example.com/user/5', {})
      end

      it "should return the response code and a nil body" do
        ApiClient::Base._response(@response).should == ['201', nil]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
api-client-1.1.1 spec/api-client/parser_spec.rb
api-client-1.1.0 spec/api-client/parser_spec.rb