Sha256: 45225d896a9981d2145590748e02d9113898491c49d4b34783695a3c9454b306
Contents?: true
Size: 1.2 KB
Versions: 1
Compression:
Stored size: 1.2 KB
Contents
describe Imap::Backup::Downloader do describe "#run" do subject { described_class.new(folder, serializer) } let(:message) { {"RFC822" => "blah"} } let(:folder) do instance_double( Imap::Backup::Account::Folder, fetch: message, name: "folder" ) end let(:folder_uids) { %w(111 222 333) } let(:serializer) do instance_double(Imap::Backup::Serializer::Mbox, save: nil) end let(:serializer_uids) { ["222"] } before do allow(folder).to receive(:uids).and_return(folder_uids) allow(serializer).to receive(:uids).and_return(serializer_uids) allow(folder).to receive(:fetch).with("333").and_return(nil) subject.run end context "with fetched messages" do it "are saved" do expect(serializer).to have_received(:save).with("111", message) end end context "with messages which are already present" do specify "are skipped" do expect(serializer).to_not have_received(:save).with("222", anything) end end context "with failed fetches" do specify "are skipped" do expect(serializer).to_not have_received(:save).with("333", anything) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
imap-backup-2.1.1 | spec/unit/imap/backup/downloader_spec.rb |