Sha256: 2485984560a1b5e2a5fc4b2cb95e221c5a4b8a41ca771f13a11b78a6fda0f78a
Contents?: true
Size: 1.76 KB
Versions: 35
Compression:
Stored size: 1.76 KB
Contents
# encoding: utf-8 require File.dirname(__FILE__) + '/../integration_helper' require 'locomotive/wagon/commands/authenticate_command' require 'thor' describe Locomotive::Wagon::AuthenticateCommand do before { VCR.insert_cassette 'authenticate', record: :new_episodes, match_requests_on: [:method, :query, :body] } after { VCR.eject_cassette } let(:platform_url) { TEST_PLATFORM_URL } let(:shell) { Thor::Shell::Color.new } let(:command) { described_class.new(platform_url, email, password, shell) } describe '#authenticate' do let(:netrc) { instance_double('netrc', save: true) } before { allow(Netrc).to receive(:read).and_return(netrc) } subject { command.authenticate } context 'new account' do let(:email) { 'john@doe.net' } let(:password) { 'asimplepassword' } before do allow_any_instance_of(Locomotive::Coal::Resource).to receive(:api_key).and_return('42') allow(Thor::LineEditor).to receive(:readline).and_return('Y', 'John') end it 'creates a new account and puts the auto-login information in the .netrc file' do expect(netrc).to receive(:[]=).with('localhost:3000', ['john@doe.net', '42']) is_expected.to eq(true) end end context 'existing account' do let(:email) { TEST_API_EMAIL } let(:password) { TEST_API_PASSWORD } let(:netrc) { instance_double('netrc', save: true) } before do allow_any_instance_of(Locomotive::Coal::Resource).to receive(:api_key).and_return('42') end it 'only puts the auto-login information in the .netrc file' do expect(netrc).to receive(:[]=).with('localhost:3000', ['admin@locomotivecms.com', '42']) is_expected.to eq(true) end end end end
Version data entries
35 entries across 35 versions & 1 rubygems