Class: WebMock::Resources::Stubber
- Inherits:
-
Object
- Object
- WebMock::Resources::Stubber
- Includes:
- API
- Defined in:
- lib/webmock-resources/stubber.rb
Class Method Summary collapse
Instance Method Summary collapse
- #stub(url, value = nil, &block) ⇒ Object
- #stub_index(resource_type) ⇒ Object
- #stub_resource(resource_type, resource_id) ⇒ Object
Class Method Details
.instance ⇒ Object
5 6 7 |
# File 'lib/webmock-resources/stubber.rb', line 5 def self.instance @instance ||= new end |
Instance Method Details
#stub(url, value = nil, &block) ⇒ Object
9 10 11 12 13 |
# File 'lib/webmock-resources/stubber.rb', line 9 def stub url, value = nil, &block stub_request(:get, url).to_return(status: 200, headers: {'Content-Type' => 'application/json'}) do { body: JSON.dump(value || block.call) } end end |
#stub_index(resource_type) ⇒ Object
15 16 17 18 19 |
# File 'lib/webmock-resources/stubber.rb', line 15 def stub_index resource_type stub("webmock/api/#{resource_type}") do ResourceStorages.instance[resource_type].map(&:to_hash) end end |
#stub_resource(resource_type, resource_id) ⇒ Object
21 22 23 |
# File 'lib/webmock-resources/stubber.rb', line 21 def stub_resource resource_type, resource_id stub("webmock/api/#{resource_type}/#{resource_id}", ResourceStorages.instance[resource_type].find(resource_id).to_hash) end |