Sha256: 3ab8d0d6e651db003f0c1ebcfccf6252b952e156cb43c49e86fe2c64672c74a7

Contents?: true

Size: 799 Bytes

Versions: 20

Compression:

Stored size: 799 Bytes

Contents

# encoding: utf-8

module Nimbu
  module Request
    module Validations
      module Format

        # Ensures that value for a given key is of the correct form whether
        # matching regular expression or set of predefined values.
        #
        def assert_valid_values(permitted, params)
          params.each do |k, v|
            next unless permitted.keys.include?(k)
            if permitted[k].is_a?(Array) && !permitted[k].include?(params[k])
              raise Nimbu::Error::UnknownValue.new(k,v, permitted[k].join(', '))

            elsif permitted[k].is_a?(Regexp) && !(permitted[k] =~ params[k])
              raise Nimbu::Error::UnknownValue.new(k,v, permitted[k])
            end
          end
        end

      end # Format
    end # Validations
  end # Request
end # Nimbu

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
nimbu-api-0.5.0 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.4.4 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.4.3 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.4.2 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.4.1 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.4.0 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.3.0 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2.1 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2.beta.3 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2.beta.2 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2.beta.1 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.2.beta lib/nimbu-api/request/validations/format.rb
nimbu-api-0.1.5 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.1.4 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.1.3 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.1.1 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.1 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.0.2 lib/nimbu-api/request/validations/format.rb
nimbu-api-0.0.1 lib/nimbu-api/request/validations/format.rb