Method: Faker::Code.nric
- Defined in:
- lib/faker/default/code.rb
.nric(min_age: 18, max_age: 65) ⇒ String
Produces a random NRIC (National Registry Identity Card) code. By default generates a Singaporean NRIC ID for someone who is born between the age of 18 and 65.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'lib/faker/default/code.rb', line 94 def nric(min_age: 18, max_age: 65) birthyear = Date.birthday(min_age: min_age, max_age: max_age).year generate(:string) do |g| g.computed(name: :prefix) do if birthyear < 2000 'S' else 'T' end end g.computed(name: :yy) do birthyear.to_s[-2..] end g.int(name: :values, length: 5) g.computed(name: :check, deps: %i[prefix yy values]) do |prefix, yy, values| generate_nric_check_alphabet("#{yy}#{values}", prefix) end end end |