Sha256: 7965b8ffe0cf7865a4639505c66aa57fce293a967e684ed61d7492ba7a39f26a

Contents?: true

Size: 1.36 KB

Versions: 10

Compression:

Stored size: 1.36 KB

Contents

require 'flipper/configuration'

RSpec.describe Flipper::Configuration do
  describe '#adapter' do
    it 'returns instance using Memory adapter' do
      expect(subject.adapter).to be_a(Flipper::Adapters::Memory)
    end

    it 'can be set' do
      instance = Flipper::Adapters::Memory.new
      expect(subject.adapter).not_to be(instance)
      subject.adapter { instance }
      expect(subject.adapter).to be(instance)
      # All adapters are wrapped in Memoizable
      expect(subject.default.adapter.adapter).to be(instance)
    end
  end

  describe '#default' do
    it 'returns instance using Memory adapter' do
      expect(subject.default).to be_a(Flipper::DSL)
      # All adapters are wrapped in Memoizable
      expect(subject.default.adapter.adapter).to be_a(Flipper::Adapters::Memory)
    end

    it 'can be set default' do
      instance = Flipper.new(Flipper::Adapters::Memory.new)
      expect(subject.default).not_to be(instance)
      subject.default { instance }
      expect(subject.default).to be(instance)
    end
  end

  describe '#statsd' do
    let(:statsd) { double(Statsd) }

    after do
      Flipper::Instrumentation::StatsdSubscriber.client = nil
    end

    it 'returns nil by default' do
      expect(subject.statsd).to be_nil
    end

    it 'can be set' do
      subject.statsd = statsd
      expect(subject.statsd).to be(statsd)
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
flipper-1.3.2 spec/flipper/configuration_spec.rb
flipper-1.3.1 spec/flipper/configuration_spec.rb
flipper-1.3.0 spec/flipper/configuration_spec.rb
flipper-1.3.0.pre spec/flipper/configuration_spec.rb
flipper-1.2.2 spec/flipper/configuration_spec.rb
flipper-1.2.1 spec/flipper/configuration_spec.rb
flipper-1.2.0 spec/flipper/configuration_spec.rb
flipper-1.1.2 spec/flipper/configuration_spec.rb
flipper-1.1.1 spec/flipper/configuration_spec.rb
flipper-1.1.0 spec/flipper/configuration_spec.rb