Refactoring - Extract Validator

This topic is for the [Extract Validator][] exercise in the [Refactoring][] trail. Post any questions, corrections, or pointers you have to share with other Upcase subscribers.
[Extract Validator]:

What’s the difference between ActiveModel::Validator and ActiveModel::EachValidator ?
We can use both of them to implement this custom validator.

Hi @rckv, the difference is that ActiveModel::Validator subclasses will have a validate method that takes a whole record, while ActiveModel::EachValidator will have a validate_each method which takes all of record, attribute, value as params. The EachValidator is described as:

The easiest way to add custom validators for validating individual attributes is with the convenient ActiveModel::EachValidator

You can read more here: