module Pollett::Testing::RequestHelper::InstanceMethods

Public Instance Methods

a_delete(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 73
def a_delete(path, context, params = nil)
  authenticated_request(:delete, path, context, params)
end
a_get(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 57
def a_get(path, context, params = nil)
  authenticated_request(:get, path, context, params)
end
a_head(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 53
def a_head(path, context, params = nil)
  authenticated_request(:head, path, context, params)
end
a_patch(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 65
def a_patch(path, context, params = nil)
  authenticated_request(:patch, path, context, params)
end
a_post(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 61
def a_post(path, context, params = nil)
  authenticated_request(:post, path, context, params)
end
a_put(path, context, params = nil) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 69
def a_put(path, context, params = nil)
  authenticated_request(:put, path, context, params)
end
auth_header_for(context) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 95
def auth_header_for(context)
  { "HTTP_AUTHORIZATION" => ActionController::HttpAuthentication::Token.encode_credentials(context.id) }
end
authenticated_request(method, path, context, params) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 77
def authenticated_request(method, path, context, params)
  json_request(method, path, params, auth_header_for(context))
end
data() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 21
def data
  @data ||= json[:data]
end
errors() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 25
def errors
  @errors ||= json[:errors]
end
expect_keys(hash, *keys) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 49
def expect_keys(hash, *keys)
  keys.each { |k| expect(hash).to have_key(k) }
end
expect_status(status) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 45
def expect_status(status)
  expect(response.status).to eq(status)
end
included() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 41
def included
  @included ||= json[:included]
end
json() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 17
def json
  @json ||= JSON.parse(response.body, symbolize_names: true)
end
json_request(method, path, params = nil, headers = {}) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 81
def json_request(method, path, params = nil, headers = {})
  send(method, path, params_for(method, params), headers.merge({
    "CONTENT_TYPE" => "application/json"
  }))
end
jsonapi() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 33
def jsonapi
  @jsonapi ||= json[:jsonapi]
end
meta() click to toggle source
# File lib/pollett/testing/request_helper.rb, line 29
def meta
  @meta ||= json[:meta]
end
params_for(method, params) click to toggle source
# File lib/pollett/testing/request_helper.rb, line 87
def params_for(method, params)
  if [:post, :patch, :put].include?(method) && params
    JSON.generate(params)
  else
    params
  end
end