module LittleWeasel::Preprocessors::PreprocessedWordsValidatable

This module provides methods to validate preprocessed words types. rubocop: disable Layout/LineLength

Public Instance Methods

validate_prepreprocessed_words(preprocessed_words:) click to toggle source
# File lib/LittleWeasel/preprocessors/preprocessed_words_validatable.rb, line 12
def validate_prepreprocessed_words(preprocessed_words:)
  raise ArgumentError, validation_error_message(object: preprocessed_words, respond_to: :original_word) unless preprocessed_words.respond_to? :original_word
  raise ArgumentError, validation_error_message(object: preprocessed_words, respond_to: :preprocessed_words) unless preprocessed_words.respond_to? :preprocessed_words

  preprocessed_words&.preprocessed_words&.each do |preprocessed_word|
    PreprocessedWordValidatable.validate_prepreprocessed_word preprocessed_word: preprocessed_word
  end
end
validation_error_message(object:, respond_to:) click to toggle source
# File lib/LittleWeasel/preprocessors/preprocessed_words_validatable.rb, line 21
def validation_error_message(object:, respond_to:)
  "Argument preprocessed_words does not respond to: #{object.class}##{respond_to}"
end