Sha256: 6e4c578d093b099620dba531864c0eb9f044c98e8025eeee9183ab1e01d8e6d7

Contents?: true

Size: 572 Bytes

Versions: 62

Compression:

Stored size: 572 Bytes

Contents

module SplitIoClient
  class EqualToBooleanMatcher
    MATCHER_TYPE = 'EQUAL_TO_BOOLEAN'.freeze

    attr_reader :attribute

    def initialize(attribute, boolean)
      @attribute = attribute
      @boolean = boolean
    end

    def match?(args)
      value = args[:attributes].fetch(@attribute) do |a|
        args[:attributes][a.to_s] || args[:attributes][a.to_sym]
      end

      value = false if value.to_s.downcase == 'false'
      value = true if value.to_s.downcase == 'true'

      value == @boolean
    end

    def string_type?
      false
    end
  end
end

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
splitclient-rb-6.0.1-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.1 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.1.pre.rc2-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.1.pre.rc2 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.1.pre.rc1-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.1.pre.rc1 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.0-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-6.0.0 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc4-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc4 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc3-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc3 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc2-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc2 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.4.pre.rc1-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.4.pre.rc1 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc1-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.3.pre.rc1 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.2-java lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb
splitclient-rb-5.1.2 lib/splitclient-rb/engine/matchers/equal_to_boolean_matcher.rb