Sha256: 4dc2ef3dc5b2cb386f94a6181d5a8998bdb0057f19630f4ae8f5a70865a34d8c

Contents?: true

Size: 999 Bytes

Versions: 5

Compression:

Stored size: 999 Bytes

Contents

require 'spec_helper'

describe Dotenvious::Prompter do
  describe '.run' do
    before(:each) do
      stub_const('Dotenvious::ENV', { 'test' => nil } )
      stub_const('Dotenvious::ENV_EXAMPLE', {'test' => nil, 'test2' => nil, 'test3' => nil} )
      # expect(Dotenvious::ENV).to receive(:keys).and_return(['test'])
      # expect(Dotenvious::ENV_EXAMPLE).to receive(:keys).and_return(['test', 'test2', 'test3'])
    end
    it 'prompts the user to add every missing or mismatched variable do' do
      expect(STDIN).to receive(:gets).twice.and_return('n')

      described_class.run
    end

    it 'appends the vars to .env' do
      expect(STDIN).to receive(:gets).twice.and_return('y','n')
      expect(File).to receive(:open).
        with('.env', 'a+').once.
        and_return(double('File', write: nil))

      described_class.run
    end

    it 'quits out if the user presses q' do
      expect(STDIN).to receive(:gets).once.and_return('q')

      described_class.run
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dotenvious-0.0.6 spec/dotenvious/prompter_spec.rb
dotenvious-0.0.5 spec/dotenvious/prompter_spec.rb
dotenvious-0.0.4 spec/dotenvious/prompter_spec.rb
dotenvious-0.0.3 spec/dotenvious/prompter_spec.rb
dotenvious-0.0.1 spec/dotenvious/prompter_spec.rb