Class: HashValidator::Validator::JsonValidator

Inherits:
Base
  • Object
show all
Defined in:
lib/hash_validator/validators/json_validator.rb

Instance Attribute Summary

Attributes inherited from Base

#name

Instance Method Summary collapse

Methods inherited from Base

#should_validate?, #validate

Constructor Details

#initializeJsonValidator

Returns a new instance of JsonValidator.



6
7
8
# File 'lib/hash_validator/validators/json_validator.rb', line 6

def initialize
  super("json")  # The name of the validator
end

Instance Method Details

#error_messageObject



10
11
12
# File 'lib/hash_validator/validators/json_validator.rb', line 10

def error_message
  "is not valid JSON"
end

#valid?(value) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
18
19
20
# File 'lib/hash_validator/validators/json_validator.rb', line 14

def valid?(value)
  return false unless value.is_a?(String)
  JSON.parse(value)
  true
rescue JSON::ParserError
  false
end