class Firmenwissen::Response::Mock

Attributes

mock_data[R]
params[R]
query[R]

Public Class Methods

new(mock_data, query, params = {}) click to toggle source
# File lib/firmenwissen/response/mock.rb, line 4
def initialize(mock_data, query, params = {})
  @mock_data = mock_data
  @query = query
  @params = params
  @suggestions = build_suggestions

  raise ArgumentError, 'mock data must either be an array, a hash or respond to `call`' unless mock_data_valid?
end

Public Instance Methods

data() click to toggle source
# File lib/firmenwissen/response/mock.rb, line 13
def data
  return mock_data.call(query, params) if mock_data.respond_to?(:call)

  case mock_data
  when Array
    mock_data
  when Hash
    mock_data[query] || []
  else
    []
  end
end
status_code() click to toggle source
# File lib/firmenwissen/response/mock.rb, line 26
def status_code
  '200'
end

Private Instance Methods

mock_data_valid?() click to toggle source
# File lib/firmenwissen/response/mock.rb, line 34
def mock_data_valid?
  mock_data.respond_to?(:call) || mock_data.is_a?(Array) || mock_data.is_a?(Hash)
end