spec/unit/configuration/asker_spec.rb in imap-backup-1.2.2 vs spec/unit/configuration/asker_spec.rb in imap-backup-1.2.3
- old
+ new
@@ -1,22 +1,21 @@
-# encoding: utf-8
-require 'spec_helper'
+require "spec_helper"
module Imap::Backup
describe Configuration::Asker do
let(:highline) { double }
let(:query) do
double(
- 'Query',
+ "Query",
:default= => nil,
:readline= => nil,
:validate= => nil,
:responses => {},
:echo= => nil
)
end
- let(:answer) { 'foo' }
+ let(:answer) { "foo" }
before do
allow(Configuration::Setup).to receive(:highline).and_return(highline)
allow(highline).to receive(:ask) do |&b|
b.call query
@@ -25,112 +24,112 @@
end
subject { described_class.new(highline) }
[
- [:email, [], 'email address'],
- [:password, [], 'password'],
- [:backup_path, ['x', 'y'], 'backup directory'],
+ [:email, [], "email address"],
+ [:password, [], "password"],
+ [:backup_path, ["x", "y"], "backup directory"]
].each do |method, params, prompt|
context ".#{method}" do
- it 'asks for input' do
+ it "asks for input" do
described_class.send(method, *params)
expect(highline).to have_received(:ask).with("#{prompt}: ")
end
- it 'returns the answer' do
+ it "returns the answer" do
expect(described_class.send(method, *params)).to eq(answer)
end
end
end
- context '#initialize' do
- it 'requires 1 parameter' do
+ context "#initialize" do
+ it "requires 1 parameter" do
expect do
described_class.new
end.to raise_error(ArgumentError, /wrong number/)
end
- it 'expects a higline' do
+ it "expects a higline" do
expect(subject.highline).to eq(highline)
end
end
- context '#email' do
- let(:email) { 'email@example.com' }
+ context "#email" do
+ let(:email) { "email@example.com" }
let(:answer) { email }
before do
@result = subject.email
end
- it 'asks for an email' do
+ it "asks for an email" do
expect(highline).to have_received(:ask).with(/email/)
end
- it 'returns the address' do
+ it "returns the address" do
expect(@result).to eq(email)
end
end
- context '#password' do
- let(:password1) { 'password' }
- let(:password2) { 'password' }
+ context "#password" do
+ let(:password1) { "password" }
+ let(:password2) { "password" }
let(:answers) { [answer1, answer2] }
let(:answer1) { true }
let(:answer2) { false }
before do
@i = 0
- allow(highline).to receive(:ask).with('password: ').and_return(password1)
- allow(highline).to receive(:ask).with('repeat password: ').and_return(password2)
+ allow(highline).to receive(:ask).with("password: ").and_return(password1)
+ allow(highline).to receive(:ask).with("repeat password: ").and_return(password2)
allow(highline).to receive(:agree) do
answer = answers[@i]
@i += 1
answer
end
@result = subject.password
end
- it 'asks for a password' do
- expect(highline).to have_received(:ask).with('password: ')
+ it "asks for a password" do
+ expect(highline).to have_received(:ask).with("password: ")
end
- it 'asks for confirmation' do
- expect(highline).to have_received(:ask).with('repeat password: ')
+ it "asks for confirmation" do
+ expect(highline).to have_received(:ask).with("repeat password: ")
end
- it 'returns the password' do
+ it "returns the password" do
expect(@result).to eq(password1)
end
- context 'different answers' do
- let(:password2) { 'secret' }
+ context "different answers" do
+ let(:password2) { "secret" }
- it 'asks to continue' do
+ it "asks to continue" do
expect(highline).to have_received(:agree).at_least(1).times.with(/Continue\?/)
end
end
end
- context '#backup_path' do
- let(:path) { '/path' }
+ context "#backup_path" do
+ let(:path) { "/path" }
let(:answer) { path }
before do
allow(highline).to receive(:ask) do |&b|
b.call query
path
end
- @result = subject.backup_path('', //)
+ @result = subject.backup_path("", //)
end
- it 'asks for a directory' do
+ it "asks for a directory" do
expect(highline).to have_received(:ask).with(/directory/)
end
- it 'returns the path' do
+ it "returns the path" do
expect(@result).to eq(path)
end
end
end
end