Sha256: e0c11adc42b1ea3e7d97ae8eac50df092ab82807168442cb24b88274397836f3
Contents?: true
Size: 879 Bytes
Versions: 15
Compression:
Stored size: 879 Bytes
Contents
require 'active_support/core_ext/array/conversions' module Hermod module Validators class Base attr_reader :value, :attributes # Public: Runs the test for the validator returning true if it passes and # raising if it fails # # Raises a Hermod::InvalidInputError if the test fails # Returns true if it succeeds def valid?(value, attributes) @value, @attributes = value, attributes !!test || raise(InvalidInputError, message) end private # Private: override in subclasses to implement the logic for that # validator # # Returns a boolean def test raise NotImplementedError end # Private: override in subclasses to provide a more useful error message # # Returns a string def message "is invalid" end end end end
Version data entries
15 entries across 15 versions & 1 rubygems