Class: ActiveResource::Response

Inherits:
Object
  • Object
show all
Defined in:
activeresource/lib/active_resource/http_mock.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(body, message = 200, headers = {}) ⇒ Response


286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
# File 'activeresource/lib/active_resource/http_mock.rb', line 286

def initialize(body, message = 200, headers = {})
  @body, @message, @headers = body, message.to_s, headers
  @code = @message[0,3].to_i

  resp_cls = Net::HTTPResponse::CODE_TO_OBJ[@code.to_s]
  if resp_cls && !resp_cls.body_permitted?
    @body = nil
  end

  if @body.nil?
    self['Content-Length'] = "0"
  else
    self['Content-Length'] = body.size.to_s
  end
end

Instance Attribute Details

#bodyObject

Returns the value of attribute body


284
285
286
# File 'activeresource/lib/active_resource/http_mock.rb', line 284

def body
  @body
end

#codeObject

Returns the value of attribute code


284
285
286
# File 'activeresource/lib/active_resource/http_mock.rb', line 284

def code
  @code
end

#headersObject

Returns the value of attribute headers


284
285
286
# File 'activeresource/lib/active_resource/http_mock.rb', line 284

def headers
  @headers
end

#messageObject

Returns the value of attribute message


284
285
286
# File 'activeresource/lib/active_resource/http_mock.rb', line 284

def message
  @message
end

Instance Method Details

#==(other) ⇒ Object

Returns true if the other is a Response with an equal body, equal message and equal headers. Otherwise it returns false.


318
319
320
321
322
323
324
# File 'activeresource/lib/active_resource/http_mock.rb', line 318

def ==(other)
  if (other.is_a?(Response))
    other.body == body && other.message == message && other.headers == headers
  else
    false
  end
end

#[](key) ⇒ Object


308
309
310
# File 'activeresource/lib/active_resource/http_mock.rb', line 308

def [](key)
  headers[key]
end

#[]=(key, value) ⇒ Object


312
313
314
# File 'activeresource/lib/active_resource/http_mock.rb', line 312

def []=(key, value)
  headers[key] = value
end

#success?Boolean

Returns true if code is 2xx, false otherwise.


304
305
306
# File 'activeresource/lib/active_resource/http_mock.rb', line 304

def success?
  code.in?(200..299)
end