master
 1require "rails_helper"
 2
 3describe EmailProcessor do
 4  subject { EmailProcessor.new(email) }
 5  let(:email) { build(:email, :with_attachment) }
 6
 7  context "with a csv attachment" do
 8    let(:backup_file) { double(process_later: true) }
 9    let(:user) { create(:user) }
10
11    before :each do
12      email.to.first[:token] = user.id
13      email.from[:email] = user.email
14    end
15
16    it "imports the csv attachment" do
17      allow(BackupFile).to receive(:new).
18        with(user, email.attachments.first).
19        and_return(backup_file)
20
21      subject.process
22
23      expect(backup_file).to have_received(:process_later).
24        with(Program.stronglifts)
25    end
26  end
27end