Sha256: 74327543efc4ac69cc0e53cd9d39c6221ae138401e2ba1b68993abc3912d1e39

Contents?: true

Size: 1.08 KB

Versions: 2

Compression:

Stored size: 1.08 KB

Contents

# frozen_string_literal: true

require File.expand_path(File.join(File.dirname(__FILE__), "spec_helper"))

describe "ProgressBar arguments" do
  let(:default_max) { 100 }
  let(:default_meters) { [:bar, :counter, :percentage, :elapsed, :eta, :rate] }

  it "should set appropriate defaults without any arguments" do
    bar = ProgressBar.new
    expect(bar.max).to eq default_max
    expect(bar.meters).to eq default_meters
  end

  it "should allow a single argument specifying the max" do
    bar = ProgressBar.new(123)
    expect(bar.max).to eq 123
    expect(bar.meters).to eq default_meters
  end

  it "should allow specifying just the meters" do
    bar = ProgressBar.new(:bar, :eta)
    expect(bar.max).to eq default_max
    expect(bar.meters).to eq [:bar, :eta]
  end

  it "should allow specyfing the max and meters" do
    bar = ProgressBar.new(123, :bar, :eta)
    expect(bar.max).to eq 123
    expect(bar.meters).to eq [:bar, :eta]
  end

  it "should raise an error when initial max is nonsense" do
    expect { ProgressBar.new(-1) }
      .to raise_error(ProgressBar::ArgumentError)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
progress_bar-1.3.3 spec/arguments_spec.rb
progress_bar-1.3.2 spec/arguments_spec.rb