class Faker::IDNumber

def valid_south_african_id_number

Returns:
  • (String) -
def valid_south_african_id_number
  id_number = [
    Faker::Date.birthday.strftime('%y%m%d'),
    Faker::Number.number(digits: 4),
    ZA_CITIZENSHIP_DIGITS.sample(random: Faker::Config.random),
    ZA_RACE_DIGIT
  ].join
  [id_number, south_african_id_checksum_digit(id_number)].join
end