Sha256: bea32c6291a4de5093ff580cdbc6e2974b69645e6cfa99c81e700a70ce9ee824

Contents?: true

Size: 1.24 KB

Versions: 16

Compression:

Stored size: 1.24 KB

Contents

require 'spec_helper'
require 'gitx/cli/base_command'

describe Gitx::Cli::BaseCommand do
  let(:args) { [] }
  let(:options) { {} }
  let(:config) do
    {
      pretend: true
    }
  end
  let(:cli) { described_class.new(args, options, config) }
  let(:repo) { cli.send(:repo) }

  describe 'without custom .gitx.yml config file' do
    before do
      expect(repo).to receive(:workdir).and_return(temp_dir)
    end
    it 'provides default options' do
      expect(cli.send(:config).config).to eq ::YAML.load_file(File.join(__dir__, '../../../lib/gitx/defaults.yml'))
    end
  end

  describe 'with custom .gitx.yml config file' do
    let(:config) do
      {
        'aggregate_branches' => %w[foo bar],
        'reserved_branches' => %w[baz qux],
        'taggable_branches' => %w[quux corge]
      }
    end
    before do
      expect(repo).to receive(:workdir).and_return(temp_dir)
      File.open(File.join(temp_dir, '.gitx.yml'), 'w') do |f|
        f.puts config.to_yaml
      end
    end
    it 'overrides default options' do
      expect(cli.send(:config).aggregate_branches).to eq(%w[foo bar])
      expect(cli.send(:config).reserved_branches).to eq(%w[baz qux])
      expect(cli.send(:config).taggable_branches).to eq(%w[quux corge])
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
gitx-4.5.0 spec/gitx/cli/base_command_spec.rb
gitx-4.4.0 spec/gitx/cli/base_command_spec.rb
gitx-4.3.0 spec/gitx/cli/base_command_spec.rb
gitx-4.1.1 spec/gitx/cli/base_command_spec.rb
gitx-4.1.0 spec/gitx/cli/base_command_spec.rb
gitx-4.0.0 spec/gitx/cli/base_command_spec.rb
gitx-4.0.0.ci.234.1 spec/gitx/cli/base_command_spec.rb
gitx-3.2.0 spec/gitx/cli/base_command_spec.rb
gitx-3.2.0.ci.231.1 spec/gitx/cli/base_command_spec.rb
gitx-3.1.2 spec/gitx/cli/base_command_spec.rb
gitx-3.1.1 spec/gitx/cli/base_command_spec.rb
gitx-3.1.0.ci.216.1 spec/gitx/cli/base_command_spec.rb
gitx-3.1.0 spec/gitx/cli/base_command_spec.rb
gitx-3.0.2.ci.213.1 spec/gitx/cli/base_command_spec.rb
gitx-3.0.2.ci.207.1 spec/gitx/cli/base_command_spec.rb
gitx-3.0.2 spec/gitx/cli/base_command_spec.rb