Module: Pavlov::Validations

Included in:
Operation
Defined in:
lib/pavlov/alpha_compatibility.rb

Instance Method Summary collapse

Instance Method Details

#validate_hexadecimal_string(param_name, param) ⇒ Object



8
9
10
11
12
# File 'lib/pavlov/alpha_compatibility.rb', line 8

def validate_hexadecimal_string param_name, param
  return if param.is_a?(String) && /\A[\da-fA-F]+\Z/.match(param)

  raise Pavlov::ValidationError,  "#{param_name.to_s} should be an hexadecimal string."
end

#validate_in_set(param_name, param, set) ⇒ Object



27
28
29
30
31
# File 'lib/pavlov/alpha_compatibility.rb', line 27

def validate_in_set param_name, param, set
  return if set.include? param

  raise Pavlov::ValidationError, "#{param_name.to_s} should be on of these values: #{set.inspect}."
end

#validate_integer(param_name, param, opts = {}) ⇒ Object



20
21
22
23
24
25
# File 'lib/pavlov/alpha_compatibility.rb', line 20

def validate_integer param_name, param, opts = {}
  return if opts[:allow_blank] && param.blank?
  return if param.is_a?(Integer)

  raise Pavlov::ValidationError, "#{param_name.to_s} should be an integer."
end

#validate_integer_string(param_name, param) ⇒ Object



45
46
47
48
49
# File 'lib/pavlov/alpha_compatibility.rb', line 45

def validate_integer_string param_name, param
  return if param.is_a?(String) && /\A\d+\Z/.match(param)

  raise Pavlov::ValidationError, "#{param_name.to_s} should be an integer string."
end

#validate_nonempty_string(param_name, param) ⇒ Object



39
40
41
42
43
# File 'lib/pavlov/alpha_compatibility.rb', line 39

def validate_nonempty_string param_name, param
  return if param.is_a?(String) && !param.empty?

  raise Pavlov::ValidationError, "#{param_name.to_s} should be a nonempty string."
end

#validate_not_nil(param_name, param) ⇒ Object



51
52
53
54
55
# File 'lib/pavlov/alpha_compatibility.rb', line 51

def validate_not_nil param_name, param
  return unless param.nil?

  raise Pavlov::ValidationError, "#{param_name.to_s} should not be nil."
end

#validate_regex(param_name, param, regex, message) ⇒ Object



14
15
16
17
18
# File 'lib/pavlov/alpha_compatibility.rb', line 14

def validate_regex param_name, param, regex, message
  return if regex.match param

  raise Pavlov::ValidationError, "#{param_name.to_s} #{message}"
end

#validate_string(param_name, param) ⇒ Object



33
34
35
36
37
# File 'lib/pavlov/alpha_compatibility.rb', line 33

def validate_string param_name, param
  return if param.is_a?(String)

  raise Pavlov::ValidationError, "#{param_name.to_s} should be a string."
end