module Faker::SpanishDocument

Constants

LETTERS
VERSION

Public Class Methods

dni() click to toggle source
# File lib/faker/spanish_document.rb, line 10
def self.dni
  n = ::Faker::Number.number(8)
  "#{n}#{LETTERS[n.to_i % 23].chr}"
end
generate(type) click to toggle source
# File lib/faker/spanish_document.rb, line 26
def self.generate(type)
  send type
end
nie() click to toggle source
# File lib/faker/spanish_document.rb, line 15
def self.nie
  pre = [0, 1, 2].sample
  n = ::Faker::Number.number(7)
  "#{%w[X Y Z][pre]}#{n}#{LETTERS[(pre * 10_000_000 + n.to_i) % 23].chr}"
end
passport() click to toggle source
# File lib/faker/spanish_document.rb, line 21
def self.passport
  l, n = [[1, 10], [2, 6], [3, 6]].sample
  [*'A'..'Z'].sample(l).join + ::Faker::Number.number(n)
end