Sha256: 12f0e4a0dcfb5dc10b8e353030eca0e6b66ff7ca3ffb742da9987db8fd75dbd8

Contents?: true

Size: 894 Bytes

Versions: 2

Compression:

Stored size: 894 Bytes

Contents

# frozen_string_literal: true

class BCDD::Result
  class Config
    module Features
      OPTIONS = {
        expectations: {
          default: true,
          affects: %w[BCDD::Result::Expectations BCDD::Context::Expectations]
        },
        event_logs: {
          default: true,
          affects: %w[BCDD::Result BCDD::Context BCDD::Result::Expectations BCDD::Context::Expectations]
        },
        and_then!: {
          default: false,
          affects: %w[BCDD::Result BCDD::Context BCDD::Result::Expectations BCDD::Context::Expectations]
        }
      }.transform_values!(&:freeze).freeze

      Listener = ->(option_name, _bool) do
        Thread.current[EventLogs::THREAD_VAR_NAME] = nil if option_name == :event_logs
      end

      def self.switcher
        Switcher.new(options: OPTIONS, listener: Listener)
      end
    end

    private_constant :Features
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bcdd-result-1.1.0 lib/bcdd/result/config/switchers/features.rb
bcdd-result-1.0.0 lib/bcdd/result/config/switchers/features.rb