Sha256: f37a2ca212eac27fddd157270a3f82fc5e94f876e42c3259316c650f486099e5

Contents?: true

Size: 999 Bytes

Versions: 36

Compression:

Stored size: 999 Bytes

Contents

# frozen_string_literal: true

require 'spec_helper'

describe Howzit::Prompt do
  subject(:prompt) { Howzit::Prompt }

  describe '.yn' do
    it 'returns default response' do
      Howzit.options[:default] = true
      expect(prompt.yn('Test prompt', default: true)).to be_truthy
      expect(prompt.yn('Test prompt', default: false)).not_to be_truthy
    end
  end

  describe '.color_single_options' do
    it 'returns uncolored string' do
      Howzit::Color.coloring = false
      expect(prompt.color_single_options(%w[y n])).to eq "[y/n]"
    end
  end

  describe '.options_list' do
    it 'creates a formatted list of options' do
      options = %w[one two three four five].each_with_object([]) do |x, arr|
        arr << "Option item #{x}"
      end
      expect { prompt.options_list(options) }.to output(/ 2 \) Option item two/).to_stdout
    end
  end

  describe '.choose' do
    it 'returns a single match' do
      expect(prompt.choose(['option 1']).count).to eq 1
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
howzit-2.1.18 spec/prompt_spec.rb
howzit-2.1.16 spec/prompt_spec.rb
howzit-2.1.15 spec/prompt_spec.rb
howzit-2.1.14 spec/prompt_spec.rb
howzit-2.1.13 spec/prompt_spec.rb
howzit-2.1.12 spec/prompt_spec.rb
howzit-2.1.10 spec/prompt_spec.rb
howzit-2.1.9 spec/prompt_spec.rb
howzit-2.1.8 spec/prompt_spec.rb
howzit-2.1.7 spec/prompt_spec.rb
howzit-2.1.6 spec/prompt_spec.rb
howzit-2.1.5 spec/prompt_spec.rb
howzit-2.1.4 spec/prompt_spec.rb
howzit-2.1.3 spec/prompt_spec.rb
howzit-2.1.2 spec/prompt_spec.rb
howzit-2.1.1 spec/prompt_spec.rb
howzit-2.1.0 spec/prompt_spec.rb
howzit-2.0.34 spec/prompt_spec.rb
howzit-2.0.33 spec/prompt_spec.rb
howzit-2.0.32 spec/prompt_spec.rb