Sha256: ada87348f3bfef8d5e28aedae20bad5a0a1da839d78808c4554864ae7380addf
Contents?: true
Size: 1.74 KB
Versions: 1
Compression:
Stored size: 1.74 KB
Contents
# encoding: utf-8 require 'spec_helper' describe Imap::Backup::Configuration::List do let(:accounts) do [ {:username => 'a1@example.com'}, {:username => 'a2@example.com'}, ] end let(:store) do double('Imap::Backup::Configuration::Store', :data => {:accounts => accounts}) end let(:exists) { true } let(:connection1) { double('Imap::Backup::Account::Connection', :disconnect => nil) } let(:connection2) { double('Imap::Backup::Account::Connection', :disconnect => nil) } before do allow(Imap::Backup::Configuration::Store).to receive(:new).and_return(store) allow(Imap::Backup::Configuration::Store).to receive(:exist?).and_return(exists) allow(Imap::Backup::Account::Connection).to receive(:new).with(accounts[0]).and_return(connection1) allow(Imap::Backup::Account::Connection).to receive(:new).with(accounts[1]).and_return(connection2) end subject { described_class.new } context '#initialize' do end context '#each_connection' do specify "calls the block with each account's connection" do connections = [] subject.each_connection { |a| connections << a } expect(connections).to eq([connection1, connection2]) end context 'with account parameter' do subject { described_class.new(['a2@example.com']) } it 'should only create requested accounts' do connections = [] subject.each_connection { |a| connections << a } expect(connections).to eq([connection2]) end end context 'when the configuration file is missing' do let(:exists) { false } it 'fails' do expect { subject.each_connection {} }.to raise_error(Imap::Backup::ConfigurationNotFound, /not found/) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
imap-backup-1.0.11 | spec/unit/configuration/list_spec.rb |