Sha256: eee939081ca31d3115620a19f0db2d904524eb4de669a4cf103301f03998bbea

Contents?: true

Size: 868 Bytes

Versions: 97

Compression:

Stored size: 868 Bytes

Contents

require 'spec_helper'
require 'rainbow'

RSpec.describe 'Custom Rainbow instance' do
  it 'inherits enabled state from the global instance' do
    Rainbow.enabled = :yep
    expect(Rainbow.new.enabled).to eq(:yep)
  end

  it 'tracks its own state separately from the global instance' do
    Rainbow.enabled = :yep
    rainbow = Rainbow.new
    expect(Rainbow.new.enabled).to eq(:yep)

    rainbow.enabled = :nope
    expect(Rainbow.enabled).to eq(:yep)
    expect(rainbow.enabled).to eq(:nope)
  end

  it 'wraps string with escape codes when enabled' do
    rainbow = Rainbow.new
    rainbow.enabled = true

    expect(rainbow.wrap('hello').green).to eq("\e[32mhello\e[0m")
  end

  it "doesn't wrap string with any escape code when disabled" do
    rainbow = Rainbow.new
    rainbow.enabled = false

    expect(rainbow.wrap('hello').green).to eq('hello')
  end
end

Version data entries

97 entries across 90 versions & 19 rubygems

Version Path
primary_connect_proto-0.20.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.20.0 vendor/bundle/ruby/3.0.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.19.0 vendor/bundle/ruby/3.0.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.18.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.18.0 vendor/bundle/ruby/3.0.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.17.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.17.0 vendor/bundle/ruby/3.0.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.12.1 vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.10.2 vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.10.1 vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.9.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.8.2 vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.8.1 vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.8.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.7.3 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.7.2 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.7.1 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.7.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
primary_connect_proto-0.6.0 vendor/bundle/ruby/2.6.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb
plaid-14.13.0 vendor/bundle/ruby/3.0.0/gems/rainbow-3.0.0/spec/integration/instance_spec.rb