Class: Faker::Code
Constant Summary
Constants inherited from Base
Base::Letters, Base::Numbers, Base::ULetters
Class Method Summary collapse
-
.asin ⇒ Object
Retrieves a real Amazon ASIN code list taken from archive.org/details/asin_listing.
-
.ean(base = 13) ⇒ Object
By default generates 13 sign ean code in format 1234567890123 You can pass 8 to generate ean8 code.
-
.imei ⇒ Object
Generate GSM modem, device or mobile phone 15 digit IMEI number.
-
.isbn(base = 10) ⇒ Object
By default generates 10 sign isbn code in format 123456789-X You can pass 13 to generate new 13 sign code.
-
.npi ⇒ Object
Generates a 10 digit NPI (National Provider Identifier issued to health care providers in the United States).
-
.nric(min_age = 18, max_age = 65) ⇒ Object
By default generates a Singaporean NRIC ID for someone who is born between the age of 18 and 65.
- .rut ⇒ Object
-
.sin ⇒ Object
Generates Social Insurance Number issued in Canada en.wikipedia.org/wiki/Social_Insurance_Number.
Methods inherited from Base
bothify, fetch, fetch_all, flexible, letterify, method_missing, numerify, parse, rand, rand_in_range, regexify, respond_to_missing?, sample, shuffle, translate, unique, with_locale
Class Method Details
.asin ⇒ Object
Retrieves a real Amazon ASIN code list taken from archive.org/details/asin_listing
47 48 49 |
# File 'lib/faker/code.rb', line 47 def asin fetch('code.asin') end |
.ean(base = 13) ⇒ Object
By default generates 13 sign ean code in format 1234567890123 You can pass 8 to generate ean8 code
19 20 21 |
# File 'lib/faker/code.rb', line 19 def ean(base = 13) base == 8 ? generate_base8_ean : generate_base13_ean end |
.imei ⇒ Object
Generate GSM modem, device or mobile phone 15 digit IMEI number.
41 42 43 |
# File 'lib/faker/code.rb', line 41 def imei generate_imei end |
.isbn(base = 10) ⇒ Object
By default generates 10 sign isbn code in format 123456789-X You can pass 13 to generate new 13 sign code
13 14 15 |
# File 'lib/faker/code.rb', line 13 def isbn(base = 10) base == 13 ? generate_base13_isbn : generate_base10_isbn end |
.npi ⇒ Object
Generates a 10 digit NPI (National Provider Identifier issued to health care providers in the United States)
7 8 9 |
# File 'lib/faker/code.rb', line 7 def npi rand(10**10).to_s.rjust(10, '0') end |
.nric(min_age = 18, max_age = 65) ⇒ Object
By default generates a Singaporean NRIC ID for someone who is born between the age of 18 and 65.
31 32 33 34 35 36 37 38 |
# File 'lib/faker/code.rb', line 31 def nric(min_age = 18, max_age = 65) birthyear = Date.birthday(min_age, max_age).year prefix = birthyear < 2000 ? 'S' : 'T' values = birthyear.to_s[-2..-1] values << regexify(/\d{5}/) check_alpha = generate_nric_check_alphabet(values, prefix) "#{prefix}#{values}#{check_alpha}" end |
.rut ⇒ Object
23 24 25 26 27 |
# File 'lib/faker/code.rb', line 23 def rut value = Number.number(8) vd = rut_verificator_digit(value) value << "-#{vd}" end |
.sin ⇒ Object
Generates Social Insurance Number issued in Canada en.wikipedia.org/wiki/Social_Insurance_Number
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/faker/code.rb', line 53 def sin # 1 - province or temporary resident # 2-8 - random numbers # 9 - checksum # 1st digit. 8,0 are not used registry = Faker::Base.sample([1, 2, 3, 4, 5, 6, 7, 9]).to_s # generate 2nd to 8th partial = Array.new(7) { Faker::Config.random.rand(0..9) }.join # Generate 9th digit check_digit = generate_sin_check_digit(registry + partial + '0').to_s registry + partial + check_digit end |