Sha256: ac61e83330b23cd58659fe493216e514502cb16ac8380eb232800a43097d8a20

Contents?: true

Size: 599 Bytes

Versions: 4

Compression:

Stored size: 599 Bytes

Contents

# coding: utf-8

require 'spec_helper'

RSpec.describe TTY::ProgressBar, 'custom' do
  let(:output) { StringIO.new('', 'w+') }

  it "allows for custom tag" do
    progress = TTY::ProgressBar.new(":hi", output: output, total: 10)

    HiFormatter = Class.new do
      def initialize(progress)
        @progress = progress
      end

      def matches?(value)
        value.to_s =~ /:hi/
      end

      def format(value)
        value.gsub(/:hi/, "Hello")
      end
    end

    progress.use(HiFormatter)
    progress.advance
    output.rewind
    expect(output.read).to eq("\e[1GHello")
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
tty-progressbar-0.5.1 spec/unit/custom_formatter_spec.rb
tty-progressbar-0.5.0 spec/unit/custom_formatter_spec.rb
tty-progressbar-0.4.0 spec/unit/custom_formatter_spec.rb
tty-progressbar-0.3.0 spec/unit/custom_formatter_spec.rb