class Faker::DNI
Public Class Methods
dni()
click to toggle source
# File lib/dni_faker.rb, line 6 def dni() number = Faker::Number.number(8).to_i "#{number}#{nif_letter(number)}" end
nie()
click to toggle source
# File lib/dni_faker.rb, line 11 def nie() available_letters = [:X, :Y] first_letter = available_letters.sample first_letter_value = available_letters.index(first_letter) number_part = Faker::Number.number(7) number_for_calculation = "#{first_letter_value}#{number_part}".to_i "#{first_letter}#{number_part}#{nif_letter(number_for_calculation)}" end
Private Class Methods
nif_letter(number)
click to toggle source
# File lib/dni_faker.rb, line 21 def nif_letter(number) nif_seq = 'TRWAGMYFPDXBNJZSQVHLCKE' nif_seq[number % nif_seq.length] end