module Applicaster::Test::Accounts::WebMockHelper
Public Instance Methods
accounts_mock_data()
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 38 def accounts_mock_data @accounts_mock_data ||= Test::Accounts::MockData.new end
client_credentials_token()
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 42 def client_credentials_token "client-credentials-token" end
stub_accounts_index_response(options = {})
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 20 def stub_accounts_index_response(options = {}) accounts = options[:accounts] || accounts_mock_data.all_accounts_attributes stub_request(:get, accounts_base_url.join("/api/v1/accounts.json")) .with(query: { access_token: options[:token] }) .to_return(successful_json_response(accounts)) end
stub_accounts_user_show_response(options = {})
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 12 def stub_accounts_user_show_response(options = {}) user = options[:user] || accounts_mock_data.user_attributes stub_request(:get, accounts_base_url.join("/api/v1/users/#{user[:id]}.json")) .with(query: { access_token: options[:token] }) .to_return(successful_json_response(user)) end
stub_client_credentials_request()
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 28 def stub_client_credentials_request url = accounts_base_url.join("/oauth/token") url.user = Applicaster::Accounts.config.client_id url.password = Applicaster::Accounts.config.client_secret stub_request(:post, url) .with(body: { "grant_type" => "client_credentials" }) .to_return(successful_json_response(access_token: client_credentials_token)) end
Private Instance Methods
accounts_base_url()
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 56 def accounts_base_url Addressable::URI.parse(Applicaster::Accounts.config.base_url) end
successful_json_response(body)
click to toggle source
# File lib/applicaster/test/accounts/web_mock_helper.rb, line 48 def successful_json_response(body) { status: 200, body: body.to_json, headers: { "Content-Type" => "application/json" }, } end