Sha256: 40d2c60246b7259642fd68addc96f82adc4fe2add8e6ab0a21e1f4dc7f14df39

Contents?: true

Size: 673 Bytes

Versions: 35

Compression:

Stored size: 673 Bytes

Contents

# frozen_string_literal: true

module Zizia
  class TitleValidator < Validator
    ##
    # @private
    #
    # @see Validator#validate
    def run_validation(parser:, **)
      parser.records.each_with_object([]) do |record, errors|
        titles = record.respond_to?(:title) ? record.title : []

        errors << error_for(record: record) if Array(titles).empty?
      end
    end

    protected

      ##
      # @private
      # @param record [InputRecord]
      #
      # @return [Error]
      def error_for(record:)
        Error.new(self,
                  :missing_title,
                  "Title is required; got #{record.mapper.metadata}")
      end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
zizia-6.0.1 lib/zizia/validators/title_validator.rb
zizia-6.0.0 lib/zizia/validators/title_validator.rb
zizia-5.5.0 lib/zizia/validators/title_validator.rb
zizia-5.4.0 lib/zizia/validators/title_validator.rb
zizia-5.3.0 lib/zizia/validators/title_validator.rb
zizia-5.2.0 lib/zizia/validators/title_validator.rb
zizia-5.1.0 lib/zizia/validators/title_validator.rb
zizia-5.0.1 lib/zizia/validators/title_validator.rb
zizia-5.0.0 lib/zizia/validators/title_validator.rb
zizia-4.6.0.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.5.4.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.5.3.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.5.2.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.5.1.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.4.1.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.4.0.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.3.1.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.2.0.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.1.0.alpha.01 lib/zizia/validators/title_validator.rb
zizia-4.0.4.alpha.01 lib/zizia/validators/title_validator.rb