Path: blob/master/spec/lib/rex/proto/sms/client_spec.rb
19670 views
# -*- coding: binary -*-1require 'spec_helper'23RSpec.describe Rex::Proto::Sms::Client do45let(:phone_numbers) { ['1112223333'] }67let(:sms_subject) { 'subject' }89let(:message) { 'message' }1011let(:carrier) { :verizon }1213let(:smtp_server) {14Rex::Proto::Sms::Model::Smtp.new(15address: 'example.com',16port: 25,17username: 'username',18password: 'password'19)20}2122subject do23Rex::Proto::Sms::Client.new(24carrier: carrier,25smtp_server: smtp_server26)27end2829describe '#initialize' do30it 'sets carrier' do31expect(subject.carrier).to eq(carrier)32end3334it 'sets smtp server' do35expect(subject.smtp_server).to eq(smtp_server)36end37end3839describe '#send_text_to_phones' do40before(:each) do41smtp = Net::SMTP.new(smtp_server.address, smtp_server.port)42allow(smtp).to receive(:start).and_yield43allow(smtp).to receive(:send_message) { |args| @sent_message = args }44allow(Net::SMTP).to receive(:new).and_return(smtp)45end4647it 'sends a text message' do48subject.send_text_to_phones(phone_numbers, sms_subject, message)49expect(@sent_message).to include(message)50end51end5253end545556