Method: MarkdownRecord::Validator#validate_filenames

Defined in:
lib/markdown_record/rendering/validator.rb

#validate_filenames(val) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/markdown_record/rendering/validator.rb', line 20

def validate_filenames(val)
  if val.is_a?(Hash)
    temp_keys = val.keys.map { |v| remove_prefix(v) }
    
    dups = temp_keys.group_by{|e| clean_path(e)}.keep_if{|_, e| e.length > 1}
    if dups.any?
      raise ::MarkdownRecord::Errors::DuplicateFilenameError.new(dups.keys)
    else
      val.each do |k, v|
        validate_filenames(v)
      end
    end
  end
end