Module: BitBucket::Validations::Format

Included in:
BitBucket::Validations
Defined in:
lib/bitbucket_rest_api/validations/format.rb

Instance Method Summary collapse

Instance Method Details

#assert_valid_values(permitted, params) ⇒ Object

Ensures that value for a given key is of the correct form whether matching regular expression or set of predefined values.



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/bitbucket_rest_api/validations/format.rb', line 10

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 BitBucket::Error::UnknownValue.new(k,v, permitted[k].join(', '))

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