Module: FFaker

Extended by:
ModuleUtils
Defined in:
lib/ffaker.rb,
lib/version.rb,
lib/ffaker/aws.rb,
lib/ffaker/job.rb,
lib/ffaker/ssn.rb,
lib/ffaker/bank.rb,
lib/ffaker/book.rb,
lib/ffaker/code.rb,
lib/ffaker/food.rb,
lib/ffaker/guid.rb,
lib/ffaker/name.rb,
lib/ffaker/time.rb,
lib/ffaker/unit.rb,
lib/ffaker/color.rb,
lib/ffaker/image.rb,
lib/ffaker/lorem.rb,
lib/ffaker/movie.rb,
lib/ffaker/music.rb,
lib/ffaker/skill.rb,
lib/ffaker/sport.rb,
lib/ffaker/tweet.rb,
lib/ffaker/venue.rb,
lib/ffaker/animal.rb,
lib/ffaker/avatar.rb,
lib/ffaker/gender.rb,
lib/ffaker/job_br.rb,
lib/ffaker/job_cn.rb,
lib/ffaker/job_fr.rb,
lib/ffaker/job_ja.rb,
lib/ffaker/job_kr.rb,
lib/ffaker/job_vn.rb,
lib/ffaker/locale.rb,
lib/ffaker/ssn_mx.rb,
lib/ffaker/ssn_se.rb,
lib/ffaker/string.rb,
lib/ffaker/address.rb,
lib/ffaker/airline.rb,
lib/ffaker/boolean.rb,
lib/ffaker/company.rb,
lib/ffaker/courses.rb,
lib/ffaker/name_ar.rb,
lib/ffaker/name_br.rb,
lib/ffaker/name_cn.rb,
lib/ffaker/name_cs.rb,
lib/ffaker/name_da.rb,
lib/ffaker/name_de.rb,
lib/ffaker/name_es.rb,
lib/ffaker/name_fr.rb,
lib/ffaker/name_ga.rb,
lib/ffaker/name_gr.rb,
lib/ffaker/name_id.rb,
lib/ffaker/name_in.rb,
lib/ffaker/name_it.rb,
lib/ffaker/name_ja.rb,
lib/ffaker/name_kh.rb,
lib/ffaker/name_kr.rb,
lib/ffaker/name_mx.rb,
lib/ffaker/name_nb.rb,
lib/ffaker/name_nl.rb,
lib/ffaker/name_ph.rb,
lib/ffaker/name_pl.rb,
lib/ffaker/name_ru.rb,
lib/ffaker/name_se.rb,
lib/ffaker/name_sn.rb,
lib/ffaker/name_th.rb,
lib/ffaker/name_tw.rb,
lib/ffaker/name_ua.rb,
lib/ffaker/name_vn.rb,
lib/ffaker/product.rb,
lib/ffaker/sem_ver.rb,
lib/ffaker/vehicle.rb,
lib/ffaker/youtube.rb,
lib/ffaker/color_pl.rb,
lib/ffaker/color_ua.rb,
lib/ffaker/currency.rb,
lib/ffaker/internet.rb,
lib/ffaker/lorem_ar.rb,
lib/ffaker/lorem_cn.rb,
lib/ffaker/lorem_fr.rb,
lib/ffaker/lorem_ie.rb,
lib/ffaker/lorem_ja.rb,
lib/ffaker/lorem_kr.rb,
lib/ffaker/lorem_pl.rb,
lib/ffaker/lorem_ru.rb,
lib/ffaker/lorem_ua.rb,
lib/ffaker/sport_pl.rb,
lib/ffaker/sport_us.rb,
lib/ffaker/animal_cn.rb,
lib/ffaker/animal_es.rb,
lib/ffaker/animal_pl.rb,
lib/ffaker/animal_us.rb,
lib/ffaker/education.rb,
lib/ffaker/gender_br.rb,
lib/ffaker/gender_cn.rb,
lib/ffaker/gender_id.rb,
lib/ffaker/gender_ja.rb,
lib/ffaker/gender_jp.rb,
lib/ffaker/gender_kr.rb,
lib/ffaker/gender_pl.rb,
lib/ffaker/address_au.rb,
lib/ffaker/address_br.rb,
lib/ffaker/address_ca.rb,
lib/ffaker/address_ch.rb,
lib/ffaker/address_da.rb,
lib/ffaker/address_de.rb,
lib/ffaker/address_fi.rb,
lib/ffaker/address_fr.rb,
lib/ffaker/address_gr.rb,
lib/ffaker/address_id.rb,
lib/ffaker/address_in.rb,
lib/ffaker/address_ja.rb,
lib/ffaker/address_kr.rb,
lib/ffaker/address_mx.rb,
lib/ffaker/address_nl.rb,
lib/ffaker/address_pl.rb,
lib/ffaker/address_ru.rb,
lib/ffaker/address_se.rb,
lib/ffaker/address_sn.rb,
lib/ffaker/address_ua.rb,
lib/ffaker/address_uk.rb,
lib/ffaker/address_us.rb,
lib/ffaker/company_cn.rb,
lib/ffaker/company_it.rb,
lib/ffaker/company_ja.rb,
lib/ffaker/company_se.rb,
lib/ffaker/conference.rb,
lib/ffaker/filesystem.rb,
lib/ffaker/html_ipsum.rb,
lib/ffaker/name_th_en.rb,
lib/ffaker/bacon_ipsum.rb,
lib/ffaker/geolocation.rb,
lib/ffaker/internet_se.rb,
lib/ffaker/unit_metric.rb,
lib/ffaker/cheesy_lingo.rb,
lib/ffaker/dizzle_ipsum.rb,
lib/ffaker/education_cn.rb,
lib/ffaker/phone_number.rb,
lib/ffaker/unit_english.rb,
lib/ffaker/address_ch_de.rb,
lib/ffaker/address_ch_fr.rb,
lib/ffaker/address_ch_it.rb,
lib/ffaker/healthcare_ru.rb,
lib/ffaker/hipster_ipsum.rb,
lib/ffaker/nato_alphabet.rb,
lib/ffaker/identification.rb,
lib/ffaker/phone_number_au.rb,
lib/ffaker/phone_number_br.rb,
lib/ffaker/phone_number_ch.rb,
lib/ffaker/phone_number_cu.rb,
lib/ffaker/phone_number_da.rb,
lib/ffaker/phone_number_de.rb,
lib/ffaker/phone_number_fr.rb,
lib/ffaker/phone_number_id.rb,
lib/ffaker/phone_number_it.rb,
lib/ffaker/phone_number_kr.rb,
lib/ffaker/phone_number_mx.rb,
lib/ffaker/phone_number_nl.rb,
lib/ffaker/phone_number_pl.rb,
lib/ffaker/phone_number_ru.rb,
lib/ffaker/phone_number_se.rb,
lib/ffaker/phone_number_sg.rb,
lib/ffaker/phone_number_sn.rb,
lib/ffaker/phone_number_tw.rb,
lib/ffaker/phone_number_ua.rb,
lib/ffaker/healthcare_ipsum.rb,
lib/ffaker/identification_br.rb,
lib/ffaker/identification_es.rb,
lib/ffaker/identification_in.rb,
lib/ffaker/identification_kr.rb,
lib/ffaker/identification_mx.rb,
lib/ffaker/identification_pl.rb,
lib/ffaker/identification_tw.rb,
lib/ffaker/utils/array_utils.rb,
lib/ffaker/utils/module_utils.rb,
lib/ffaker/utils/random_utils.rb,
lib/ffaker/utils/unique_utils.rb,
lib/ffaker/identification_es_cl.rb,
lib/ffaker/identification_es_co.rb

Defined Under Namespace

Modules: AWS, Address, AddressAU, AddressBR, AddressCA, AddressCH, AddressCHDE, AddressCHFR, AddressCHIT, AddressDA, AddressDE, AddressFI, AddressFR, AddressGR, AddressID, AddressIN, AddressJA, AddressKR, AddressMX, AddressNL, AddressPL, AddressRU, AddressSE, AddressSN, AddressUA, AddressUK, AddressUS, Airline, Animal, AnimalCN, AnimalES, AnimalPL, AnimalUS, ArrayUtils, Avatar, BaconIpsum, Bank, Book, Boolean, CheesyLingo, Code, Color, ColorPL, ColorUA, Company, CompanyCN, CompanyIT, CompanyJA, CompanySE, Conference, CoursesFR, Currency, DizzleIpsum, Education, EducationCN, Filesystem, Food, Gender, GenderBR, GenderCN, GenderID, GenderJA, GenderJP, GenderKR, GenderPL, Geolocation, Guid, HTMLIpsum, HealthcareIpsum, HealthcareRU, HipsterIpsum, Identification, IdentificationBR, IdentificationES, IdentificationESCL, IdentificationESCO, IdentificationIN, IdentificationKr, IdentificationMX, IdentificationPL, IdentificationTW, Image, Internet, InternetSE, Job, JobBR, JobCN, JobFR, JobJA, JobKR, JobVN, Locale, Lorem, LoremAR, LoremCN, LoremFR, LoremIE, LoremJA, LoremKR, LoremPL, LoremRU, LoremUA, ModuleUtils, Movie, Music, Name, NameAR, NameBR, NameCN, NameCS, NameDA, NameDE, NameES, NameFR, NameGA, NameGR, NameID, NameIN, NameIT, NameJA, NameKH, NameKR, NameMX, NameNB, NameNL, NamePH, NamePL, NameRU, NameSE, NameSN, NameTH, NameTHEN, NameTW, NameUA, NameVN, NatoAlphabet, PhoneNumber, PhoneNumberAU, PhoneNumberBR, PhoneNumberCH, PhoneNumberCU, PhoneNumberDA, PhoneNumberDE, PhoneNumberFR, PhoneNumberID, PhoneNumberIT, PhoneNumberKR, PhoneNumberMX, PhoneNumberNL, PhoneNumberPL, PhoneNumberRU, PhoneNumberSE, PhoneNumberSG, PhoneNumberSN, PhoneNumberTW, PhoneNumberUA, Product, Random, RandomUtils, SSN, SSNMX, SSNSE, SemVer, Skill, Sport, SportPL, SportUS, String, Time, Tweet, Unit, UnitEnglish, UnitMetric, Vehicle, Venue, Youtube Classes: UniqueUtils

Constant Summary collapse

BASE_LIB_PATH =
File.expand_path(__dir__)
LETTERS =
Array('a'..'z').freeze
HEX =
%w[0 1 2 3 4 5 6 7 8 9 A B C D E F].freeze
VERSION =
'2.17.0'

Class Method Summary collapse

Methods included from ModuleUtils

const_missing, k, underscore, unique

Methods included from RandomUtils

#fetch_sample, #rand, #shuffle

Class Method Details

.bothify(masks) ⇒ Object


27
28
29
# File 'lib/ffaker.rb', line 27

def self.bothify(masks)
  letterify(numerify(masks))
end

.hexify(*masks) ⇒ Object


15
16
17
# File 'lib/ffaker.rb', line 15

def self.hexify(*masks)
  fetch_sample(masks.flatten).gsub(/#/) { fetch_sample(HEX) }
end

.letterify(*masks) ⇒ Object


23
24
25
# File 'lib/ffaker.rb', line 23

def self.letterify(*masks)
  fetch_sample(masks.flatten).gsub(/\?/) { fetch_sample(LETTERS) }
end

.numerify(*masks) ⇒ Object


19
20
21
# File 'lib/ffaker.rb', line 19

def self.numerify(*masks)
  fetch_sample(masks.flatten).gsub(/#/) { rand(0..9).to_s }
end