Sha256: 739e70cfba803d1a053f75c6427a72227dd0c785f6d19b04558ba4cc1b76f632

Contents?: true

Size: 533 Bytes

Versions: 16

Compression:

Stored size: 533 Bytes

Contents

# frozen_string_literal: true

module WebMock
  class HashValidator
    def initialize(hash)
      @hash = hash
    end

    #This code is based on https://github.com/rails/rails/blob/master/activesupport/lib/active_support/core_ext/hash/keys.rb
    def validate_keys(*valid_keys)
      valid_keys.flatten!
      @hash.each_key do |k|
        unless valid_keys.include?(k)
          raise ArgumentError.new("Unknown key: #{k.inspect}. Valid keys are: #{valid_keys.map(&:inspect).join(', ')}")
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 5 rubygems

Version Path
webmock-3.25.1 lib/webmock/util/hash_validator.rb
webmock-3.25.0 lib/webmock/util/hash_validator.rb
tailscale_middleware-0.0.3 vendor/cache/ruby/3.4.0/gems/webmock-3.24.0/lib/webmock/util/hash_validator.rb
minato_ruby_api_client-0.2.2 vendor/bundle/ruby/3.2.0/gems/webmock-3.23.1/lib/webmock/util/hash_validator.rb
webmock-3.24.0 lib/webmock/util/hash_validator.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/webmock-3.23.1/lib/webmock/util/hash_validator.rb
webmock-3.23.0 lib/webmock/util/hash_validator.rb
webmock-3.22.0 lib/webmock/util/hash_validator.rb
webmock-3.21.2 lib/webmock/util/hash_validator.rb
webmock-3.21.1 lib/webmock/util/hash_validator.rb
webmock-3.21.0 lib/webmock/util/hash_validator.rb
webmock-3.20.0 lib/webmock/util/hash_validator.rb
honeybadger-5.4.0 vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/hash_validator.rb
honeybadger-5.3.0 vendor/bundle/ruby/3.2.0/gems/webmock-3.19.1/lib/webmock/util/hash_validator.rb
webmock-3.19.1 lib/webmock/util/hash_validator.rb
webmock-3.19.0 lib/webmock/util/hash_validator.rb