module FFaker::IdentificationBR
def document_verification_digits(verification_multipliers, document = nil)
def document_verification_digits(verification_multipliers, document = nil) return false if document.nil? document_digits = document.to_s.scan(/[0-9]/).map(&:to_i) validation_digits = [] if document_digits.size + 1 == verification_multipliers.size && document_digits.uniq.size > 1 0.upto(1) do |i| sum = verification_multipliers.drop(1 - i).each_with_index.inject(0) do |val, (value, j)| val + document_digits[j] * value end validation_digits[i] = (sum %= 11) < 2 ? 0 : 11 - sum document_digits.push(validation_digits[i]) end return validation_digits end [] end