Sha256: 0b593d1a5983293377a58c40a73059c39f244b07cbe1bfd7076a4486bb5dc32d

Contents?: true

Size: 1.2 KB

Versions: 6

Compression:

Stored size: 1.2 KB

Contents

require_relative '../test_helper'

describe HammerCLI::Options::OptionCollector do
  before do
    recognised_options = [mock, mock]
    source1_result = {:option1 => 1, :option2 => nil, :option4 => HammerCLI::NilValue}
    source2_result = source1_result.merge({:option3 => 3})

    source1 = mock
    source1.expects(:get_options).with(recognised_options, {}).returns(source1_result)

    source2 = mock
    source2.expects(:get_options).with(recognised_options, source1_result).returns(source2_result)

    @collector = HammerCLI::Options::OptionCollector.new(recognised_options, [source1, source2])
  end

  describe '#options' do
    it 'returns options without nil values but with NIL values' do
      assert_equal({:option1 => 1, :option3 => 3, :option4 => nil}, @collector.options)
    end
  end

  describe '#all_options' do
    it 'returns all options' do
      assert_equal({:option1 => 1, :option2 => nil, :option3 => 3, :option4 => nil}, @collector.all_options)
    end
  end
  
  describe '#all_options_raw' do
    it 'returns all options with NIL values untranslated' do
      assert_equal({:option1 => 1, :option2 => nil, :option3 => 3, :option4 => HammerCLI::NilValue}, @collector.all_options_raw)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
hammer_cli-0.15.1 test/unit/options/option_collector_test.rb
hammer_cli-0.15.0 test/unit/options/option_collector_test.rb
hammer_cli-0.14.0 test/unit/options/option_collector_test.rb
hammer_cli-0.13.1 test/unit/options/option_collector_test.rb
hammer_cli-0.13.0 test/unit/options/option_collector_test.rb
hammer_cli-0.12.0 test/unit/options/option_collector_test.rb