Sha256: aea399e059968dac13957087962e33c18d7ffa63ac8c5b190a9fec7494bbe449

Contents?: true

Size: 1018 Bytes

Versions: 155

Compression:

Stored size: 1018 Bytes

Contents

# frozen_string_literal: true

require 'eac_cli/speaker'

RSpec.describe ::EacCli::Speaker do
  let(:instance) { described_class.new }

  describe '#input' do
    it 'recover value from hash list' do
      allow(instance).to receive(:request_string).and_return('opt1')
      list = { opt1: 'value1', opt2: 'value2' }
      expect(instance.input('Question', list: list)).to eq('value1')
    end

    it 'recover value from array list' do
      allow(instance).to receive(:request_string).and_return('OPT1')
      list = %w[opt1 opt2]
      expect(instance.input('Question', list: list)).to eq('opt1')
    end

    {
      'yes' => true, 'y' => true, 'Y' => true, 'NO' => false, 'no' => false, 'n' => false
    }.each do |input, expected|
      context "when bool: true and input is \"#{input}\"" do
        it "return #{expected}" do
          allow(instance).to receive(:request_string).and_return(input)
          expect(instance.input('Question', bool: true)).to eq(expected)
        end
      end
    end
  end
end

Version data entries

155 entries across 155 versions & 3 rubygems

Version Path
eac_tools-0.76.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.75.2 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.75.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.75.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.74.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.74.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.73.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.72.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.70.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.70.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.69.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.69.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.68.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.67.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.67.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.66.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.65.1 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.65.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.64.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb
eac_tools-0.63.0 sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb