# encoding: utf-8 require File.dirname(__FILE__) + '/../../spec_helper' module SendGrid4r::REST describe Mail do describe 'integration test', :it do before do Dotenv.load @client = SendGrid4r::Client.new(api_key: ENV['API_KEY']) end context 'without block call' do it '#send with mandatory params' do # Create Personalization to = SendGrid4r::Factory::MailFactory.create_address( email: ENV['MAIL'] ) per = SendGrid4r::Factory::MailFactory.create_personalization( to: [to] ) # Create Params from = SendGrid4r::Factory::MailFactory.create_address( email: ENV['FROM'] ) plain = SendGrid4r::Factory::MailFactory.create_content( type: 'text/plain', value: 'Hello! TEXT' ) params = SendGrid4r::Factory::MailFactory.create_params( personalizations: [per], from: from, content: [plain], subject: 'Hello v3 Mail' ) begin @client.send(params: params) rescue RestClient::ExceptionWithResponse => e puts e.inspect raise end end it '#send with full params' do # Create Personalization to = SendGrid4r::Factory::MailFactory.create_address( email: ENV['MAIL'], name: 'To name' ) cc = SendGrid4r::Factory::MailFactory.create_address( email: ENV['CC'], name: 'Cc name' ) bcc = SendGrid4r::Factory::MailFactory.create_address( email: ENV['BCC'], name: 'Bcc name' ) per = SendGrid4r::Factory::MailFactory.create_personalization( to: [to] ) per.bcc = [bcc] per.cc = [cc] per.headers = { 'X-CUSTOM' => 'X-VALUE' } per.substitutions = { 'subkey' => 'subvalue', 'sectionkey' => 'sectionkey' } per.custom_args = { 'CUSTOM' => 'value' } per.send_at = Time.utc(2016) # Create Params from = SendGrid4r::Factory::MailFactory.create_address( email: ENV['FROM'], name: 'From Name' ) plain = SendGrid4r::Factory::MailFactory.create_content( type: 'text/plain', value: 'Hello! TEXT subkey'\ 'sectionkey\nhttps://www.google.com' ) html = SendGrid4r::Factory::MailFactory.create_content( type: 'text/html', value: '
html footer
') mail_settings.disable_footer mail_settings.enable_sandbox_mode mail_settings.disable_sandbox_mode mail_settings.enable_spam_check(10, 'http://www.kke.co.jp') mail_settings.disable_spam_check params.mail_settings = mail_settings # Create TrackingSettings tracking = SendGrid4r::Factory::MailFactory.create_tracking_settings tracking.enable_click_tracking(true) tracking.disable_click_tracking tracking.enable_open_tracking('open_tag') tracking.disable_open_tracking tracking.enable_subscription_tracking('', '', 'tag') tracking.disable_subscription_tracking tracking.enable_ganalytics('', '', '', '', '') tracking.disable_ganalytics params.tracking_settings = tracking begin @client.send(params: params) rescue RestClient::ExceptionWithResponse => e puts e.inspect raise end end end end end end