module Aws::Rails::ActionMailbox::RSpec
def action_mailbox_ses_deliver_email(options = {})
def action_mailbox_ses_deliver_email(options = {}) email = Email.new(**options) stub_aws_sns_message_verifier(email) post email.url, params: email.params, headers: email.headers, as: :json end
def action_mailbox_ses_deliver_subscription_confirmation(options = {})
def action_mailbox_ses_deliver_subscription_confirmation(options = {}) subscription_confirmation = SubscriptionConfirmation.new(**options) stub_aws_sns_message_verifier(subscription_confirmation) stub_aws_sns_subscription_request post subscription_confirmation.url, params: subscription_confirmation.params, headers: subscription_confirmation.headers, as: :json end
def message_verifier(subscription_confirmation)
def message_verifier(subscription_confirmation) instance_double(Aws::SNS::MessageVerifier, authentic?: subscription_confirmation.authentic?) end
def stub_aws_sns_message_verifier(notification)
def stub_aws_sns_message_verifier(notification) allow(Aws::Rails::ActionMailbox::SnsMessageVerifier).to receive(:verifier) { message_verifier(notification) } end
def stub_aws_sns_subscription_request
def stub_aws_sns_subscription_request allow(Net::HTTP).to receive(:get_response).and_call_original allow(Net::HTTP) .to receive(:get_response) .with(URI('http://example.com/subscribe')) { double(code: '200') } end