ffaker 2.7.0 → 2.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/Changelog.md +115 -0
- data/Gemfile +2 -0
- data/RANDOM.md +153 -0
- data/README.md +25 -4
- data/REFERENCE.md +1736 -1117
- data/Rakefile +5 -9
- data/ffaker.gemspec +15 -6
- data/lib/ffaker/address.rb +3 -3
- data/lib/ffaker/address_au.rb +8 -10
- data/lib/ffaker/address_br.rb +16 -4
- data/lib/ffaker/address_ca.rb +3 -3
- data/lib/ffaker/address_ch.rb +1 -3
- data/lib/ffaker/address_ch_de.rb +1 -3
- data/lib/ffaker/address_ch_fr.rb +1 -3
- data/lib/ffaker/address_ch_it.rb +1 -3
- data/lib/ffaker/address_da.rb +1 -3
- data/lib/ffaker/address_de.rb +1 -3
- data/lib/ffaker/address_fi.rb +1 -3
- data/lib/ffaker/address_fr.rb +6 -4
- data/lib/ffaker/address_gr.rb +1 -3
- data/lib/ffaker/address_id.rb +0 -3
- data/lib/ffaker/address_in.rb +5 -3
- data/lib/ffaker/address_it.rb +36 -0
- data/lib/ffaker/address_ja.rb +0 -3
- data/lib/ffaker/address_kr.rb +0 -1
- data/lib/ffaker/address_mx.rb +3 -471
- data/lib/ffaker/address_nl.rb +2 -6
- data/lib/ffaker/address_pl.rb +0 -2
- data/lib/ffaker/address_ru.rb +1 -3
- data/lib/ffaker/address_se.rb +1 -3
- data/lib/ffaker/address_sn.rb +1 -4
- data/lib/ffaker/address_ua.rb +2 -4
- data/lib/ffaker/address_uk.rb +1 -3
- data/lib/ffaker/address_us.rb +23 -5
- data/lib/ffaker/airline.rb +1 -1
- data/lib/ffaker/animal.rb +14 -0
- data/lib/ffaker/{animals.rb → animal_br.rb} +2 -2
- data/lib/ffaker/animal_cn.rb +12 -0
- data/lib/ffaker/animal_es.rb +12 -0
- data/lib/ffaker/animal_pl.rb +15 -0
- data/lib/ffaker/animal_us.rb +12 -0
- data/lib/ffaker/avatar.rb +23 -5
- data/lib/ffaker/aws.rb +1 -1
- data/lib/ffaker/bacon_ipsum.rb +1 -3
- data/lib/ffaker/bank.rb +118 -0
- data/lib/ffaker/book.rb +12 -1
- data/lib/ffaker/boolean.rb +1 -1
- data/lib/ffaker/cheesy_lingo.rb +3 -6
- data/lib/ffaker/code.rb +37 -0
- data/lib/ffaker/color.rb +7 -7
- data/lib/ffaker/color_pl.rb +14 -0
- data/lib/ffaker/color_ua.rb +1 -1
- data/lib/ffaker/company.rb +4 -7
- data/lib/ffaker/company_cn.rb +1 -1
- data/lib/ffaker/company_fr.rb +35 -0
- data/lib/ffaker/company_it.rb +4 -2
- data/lib/ffaker/company_ja.rb +24 -0
- data/lib/ffaker/company_se.rb +1 -1
- data/lib/ffaker/conference.rb +1 -1
- data/lib/ffaker/{courses.rb → courses_fr.rb} +3 -1
- data/lib/ffaker/currency.rb +5 -1
- data/lib/ffaker/data/address/city_suffixes +1 -1
- data/lib/ffaker/data/address/country +1 -1
- data/lib/ffaker/data/address/country_code +1 -1
- data/lib/ffaker/data/address/neighborhood +1 -1
- data/lib/ffaker/data/address/street_suffix +1 -1
- data/lib/ffaker/data/address_br/city +0 -1
- data/lib/ffaker/data/address_br/complement +3 -0
- data/lib/ffaker/data/address_br/neighborhood_prefixes +3 -0
- data/lib/ffaker/data/address_br/state +1 -1
- data/lib/ffaker/data/address_ca/city +99 -99
- data/lib/ffaker/data/address_ca/province +1 -1
- data/lib/ffaker/data/address_de/city +1 -1
- data/lib/ffaker/data/address_de/state +1 -1
- data/lib/ffaker/data/address_fr/city +1 -1
- data/lib/ffaker/data/address_fr/region +27 -0
- data/lib/ffaker/data/address_gr/city +1 -1
- data/lib/ffaker/data/address_gr/region +1 -1
- data/lib/ffaker/data/address_gr/street +1 -1
- data/lib/ffaker/data/address_in/city +24 -0
- data/lib/ffaker/data/address_it/city +111 -0
- data/lib/ffaker/data/address_it/region +20 -0
- data/lib/ffaker/data/address_ja/city +0 -23
- data/lib/ffaker/data/address_mx/ags +11 -0
- data/lib/ffaker/data/address_mx/bc +5 -0
- data/lib/ffaker/data/address_mx/bcs +5 -0
- data/lib/ffaker/data/address_mx/camp +11 -0
- data/lib/ffaker/data/address_mx/chih +67 -0
- data/lib/ffaker/data/address_mx/chis +118 -0
- data/lib/ffaker/data/address_mx/coah +38 -0
- data/lib/ffaker/data/address_mx/col +10 -0
- data/lib/ffaker/data/address_mx/df +16 -0
- data/lib/ffaker/data/address_mx/dgo +39 -0
- data/lib/ffaker/data/address_mx/gro +81 -0
- data/lib/ffaker/data/address_mx/gto +46 -0
- data/lib/ffaker/data/address_mx/hgo +84 -0
- data/lib/ffaker/data/address_mx/jal +125 -0
- data/lib/ffaker/data/address_mx/mex +125 -0
- data/lib/ffaker/data/address_mx/mich +113 -0
- data/lib/ffaker/data/address_mx/mor +33 -0
- data/lib/ffaker/data/address_mx/nay +20 -0
- data/lib/ffaker/data/address_mx/nl +51 -0
- data/lib/ffaker/data/address_mx/oax +570 -0
- data/lib/ffaker/data/address_mx/pue +217 -0
- data/lib/ffaker/data/address_mx/qr +10 -0
- data/lib/ffaker/data/address_mx/qro +18 -0
- data/lib/ffaker/data/address_mx/sin +18 -0
- data/lib/ffaker/data/address_mx/slp +58 -0
- data/lib/ffaker/data/address_mx/son +72 -0
- data/lib/ffaker/data/address_mx/state +1 -1
- data/lib/ffaker/data/address_mx/state_abbr +1 -1
- data/lib/ffaker/data/address_mx/tab +17 -0
- data/lib/ffaker/data/address_mx/tamps +43 -0
- data/lib/ffaker/data/address_mx/tlax +60 -0
- data/lib/ffaker/data/address_mx/ver +212 -0
- data/lib/ffaker/data/address_mx/yuc +106 -0
- data/lib/ffaker/data/address_mx/zac +58 -0
- data/lib/ffaker/data/address_ru/city +1 -1
- data/lib/ffaker/data/address_se/city +1 -1
- data/lib/ffaker/data/address_se/countries +1 -1
- data/lib/ffaker/data/address_se/street +1 -1
- data/lib/ffaker/data/address_sn/arrondissements +1 -1
- data/lib/ffaker/data/address_sn/departements +1 -1
- data/lib/ffaker/data/address_sn/regions +1 -1
- data/lib/ffaker/data/address_uk/county +1 -1
- data/lib/ffaker/data/address_us/state +1 -1
- data/lib/ffaker/data/address_us/state_abbr +1 -2
- data/lib/ffaker/data/address_us/state_and_territories_abbr +1 -1
- data/lib/ffaker/data/animal_br/common_names +423 -0
- data/lib/ffaker/data/animal_cn/common_names +141 -0
- data/lib/ffaker/data/animal_es/common_names +135 -0
- data/lib/ffaker/data/animal_pl/common_names +256 -0
- data/lib/ffaker/data/animal_us/common_names +141 -0
- data/lib/ffaker/data/aws/ec2_reserved_instance_tenancy +1 -1
- data/lib/ffaker/data/aws/ec2_reserved_offering_type +1 -1
- data/lib/ffaker/data/aws/ec2_reserved_product_description +1 -1
- data/lib/ffaker/data/bank/card_types +12 -0
- data/lib/ffaker/data/book/nouns +2 -2
- data/lib/ffaker/data/cheesy_lingo/cheesy_phrases +1 -1
- data/lib/ffaker/data/cheesy_lingo/cheesy_words +1 -1
- data/lib/ffaker/data/color/names_list +1 -1
- data/lib/ffaker/data/color_pl/names_list +122 -0
- data/lib/ffaker/data/company/bs_mid +1 -1
- data/lib/ffaker/data/company/bs_pos +1 -1
- data/lib/ffaker/data/company/bs_pre +1 -1
- data/lib/ffaker/data/company/catch_mid +1 -1
- data/lib/ffaker/data/company/catch_pos +1 -1
- data/lib/ffaker/data/company/catch_pre +1 -1
- data/lib/ffaker/data/company/position_areas +1 -1
- data/lib/ffaker/data/conference/conference_list +1 -1
- data/lib/ffaker/data/currency/currency_code +1 -1
- data/lib/ffaker/data/currency/currency_name +1 -1
- data/lib/ffaker/data/currency/currency_symbol +8 -0
- data/lib/ffaker/data/dizzle_ipsum/dizzle_words +1 -1
- data/lib/ffaker/data/education/major_noun +1 -1
- data/lib/ffaker/data/education/school_suffix +1 -1
- data/lib/ffaker/data/education_cn/city +351 -0
- data/lib/ffaker/data/education_cn/major +506 -0
- data/lib/ffaker/data/education_cn/province +31 -0
- data/lib/ffaker/data/education_cn/school_type +27 -0
- data/lib/ffaker/data/filesystem/extension +31 -31
- data/lib/ffaker/data/food/fruit +1 -1
- data/lib/ffaker/data/food/herb_spice +1 -1
- data/lib/ffaker/data/food/meat +1 -1
- data/lib/ffaker/data/food/vegetable +1 -1
- data/lib/ffaker/data/food_pl/diary +14 -0
- data/lib/ffaker/data/food_pl/fermented +13 -0
- data/lib/ffaker/data/food_pl/fruits +34 -0
- data/lib/ffaker/data/food_pl/herbs +20 -0
- data/lib/ffaker/data/food_pl/meats +9 -0
- data/lib/ffaker/data/food_pl/preserves +10 -0
- data/lib/ffaker/data/food_pl/spices +26 -0
- data/lib/ffaker/data/food_pl/vegetables +45 -0
- data/lib/ffaker/data/freedom_ipsum/freedom_words +161 -0
- data/lib/ffaker/data/game/adj_and_adv +18 -0
- data/lib/ffaker/data/game/category +84 -0
- data/lib/ffaker/data/game/mechanic +182 -0
- data/lib/ffaker/data/game/nouns +37 -0
- data/lib/ffaker/data/game/prefixes +17 -0
- data/lib/ffaker/data/healthcare_ru/doctor_specialization +127 -0
- data/lib/ffaker/data/hipster_ipsum/hipster_words +1 -1
- data/lib/ffaker/data/identification_mx/estados_curp +1 -1
- data/lib/ffaker/data/job/job_adj +1 -1
- data/lib/ffaker/data/job/job_noun +1 -1
- data/lib/ffaker/data/job/job_prefix +1 -1
- data/lib/ffaker/data/job_fr/job_prefixes +1 -1
- data/lib/ffaker/data/job_it/job_adj +37 -0
- data/lib/ffaker/data/job_it/job_noun +25 -0
- data/lib/ffaker/data/job_it/job_prefix +22 -0
- data/lib/ffaker/data/locale/language +1 -1
- data/lib/ffaker/data/locale/language_code +1 -1
- data/lib/ffaker/data/lorem/characters +1 -1
- data/lib/ffaker/data/lorem/words +1 -68
- data/lib/ffaker/data/lorem_ar/words +1 -1
- data/lib/ffaker/data/lorem_br/characters +36 -0
- data/lib/ffaker/data/lorem_br/words +183 -0
- data/lib/ffaker/data/lorem_cn/words +1 -1
- data/lib/ffaker/data/lorem_fr/words +1 -1
- data/lib/ffaker/data/lorem_ie/characters +5 -0
- data/lib/ffaker/data/lorem_ie/paragraphs +2 -0
- data/lib/ffaker/data/lorem_ie/questions +1 -0
- data/lib/ffaker/data/lorem_ie/sentences +1 -0
- data/lib/ffaker/data/lorem_ie/words +107 -0
- data/lib/ffaker/data/lorem_it/words +321 -0
- data/lib/ffaker/data/lorem_pl/characters +32 -0
- data/lib/ffaker/data/lorem_pl/words +245 -0
- data/lib/ffaker/data/movie/adj_and_adv +1 -1
- data/lib/ffaker/data/movie/nouns +3 -3
- data/lib/ffaker/data/movie/prefixes +1 -1
- data/lib/ffaker/data/name/first_names_female +0 -230
- data/lib/ffaker/data/name/first_names_male +0 -37
- data/lib/ffaker/data/name/last_names +1 -2
- data/lib/ffaker/data/name/pronouns +6 -0
- data/lib/ffaker/data/name_ar/first_names_female +1 -1
- data/lib/ffaker/data/name_ar/first_names_male +1 -1
- data/lib/ffaker/data/name_ar/last_names +1 -1
- data/lib/ffaker/data/name_cn/first_names +1 -1
- data/lib/ffaker/data/name_cn/last_names +1 -1
- data/lib/ffaker/data/name_cs/female_first_names +40 -0
- data/lib/ffaker/data/name_cs/female_last_names +50 -0
- data/lib/ffaker/data/name_cs/male_first_names +88 -0
- data/lib/ffaker/data/name_cs/male_last_names +49 -0
- data/lib/ffaker/data/name_cs/prefixes +4 -4
- data/lib/ffaker/data/name_de/first_names +1 -1
- data/lib/ffaker/data/name_de/last_names +1 -1
- data/lib/ffaker/data/name_es/first_names_female +184 -0
- data/lib/ffaker/data/name_es/first_names_male +165 -0
- data/lib/ffaker/data/name_es/last_names +208 -0
- data/lib/ffaker/data/name_fr/first_names +1 -1
- data/lib/ffaker/data/name_fr/last_names +1 -1
- data/lib/ffaker/data/name_ga/first_names_female +1 -1
- data/lib/ffaker/data/name_ga/first_names_male +287 -287
- data/lib/ffaker/data/name_gr/female_first_names +1 -1
- data/lib/ffaker/data/name_gr/female_last_names +1 -1
- data/lib/ffaker/data/name_gr/male_first_names +1 -1
- data/lib/ffaker/data/name_gr/male_last_names +1 -1
- data/lib/ffaker/data/name_in/first_names_female +100 -0
- data/lib/ffaker/data/name_in/first_names_male +100 -0
- data/lib/ffaker/data/name_in/last_names +100 -0
- data/lib/ffaker/data/name_it/first_names +1 -1
- data/lib/ffaker/data/name_it/last_names +1 -1
- data/lib/ffaker/data/name_ja/first_names +1 -1
- data/lib/ffaker/data/name_ja/last_names +1 -1
- data/lib/ffaker/data/name_kh/first_names +1 -1
- data/lib/ffaker/data/name_kh/nick_names +1 -1
- data/lib/ffaker/data/name_kr/first_names +1 -1
- data/lib/ffaker/data/name_kr/last_names +1 -1
- data/lib/ffaker/data/name_mx/female_first_names +1 -1
- data/lib/ffaker/data/name_mx/last_names +1 -1
- data/lib/ffaker/data/name_mx/male_first_names +1 -1
- data/lib/ffaker/data/name_ph/autochthonous_surnames +1 -1
- data/lib/ffaker/data/name_ph/spanish_surnames +1 -1
- data/lib/ffaker/data/name_ru/first_names_female +91 -0
- data/lib/ffaker/data/name_ru/first_names_male +172 -0
- data/lib/ffaker/data/name_ru/last_names_female +100 -0
- data/lib/ffaker/data/name_ru/last_names_male +100 -0
- data/lib/ffaker/data/name_ru/middle_names_female +65 -0
- data/lib/ffaker/data/name_ru/middle_names_male +73 -0
- data/lib/ffaker/data/name_se/first_names_female +1 -1
- data/lib/ffaker/data/name_se/first_names_male +1 -1
- data/lib/ffaker/data/name_se/last_names +1 -1
- data/lib/ffaker/data/name_sn/first_names_female +1 -1
- data/lib/ffaker/data/name_sn/first_names_male +1 -1
- data/lib/ffaker/data/name_sn/last_names +1 -1
- data/lib/ffaker/data/name_th/first_names +1 -1
- data/lib/ffaker/data/name_th/last_names +1 -1
- data/lib/ffaker/data/name_th/nick_names +1 -1
- data/lib/ffaker/data/name_tw/first_names +122 -0
- data/lib/ffaker/data/name_tw/last_names +100 -0
- data/lib/ffaker/data/nato_alphabet/alphabet_codes +26 -0
- data/lib/ffaker/data/nato_alphabet/numeric_codes +10 -0
- data/lib/ffaker/data/phone_number_ja/four_disit_area_codes +41 -0
- data/lib/ffaker/data/phone_number_ja/one_disit_area_codes +3 -0
- data/lib/ffaker/data/phone_number_ja/three_disit_area_codes +296 -0
- data/lib/ffaker/data/phone_number_ja/two_disit_area_codes +48 -0
- data/lib/ffaker/data/phone_number_nl/area_codes +142 -0
- data/lib/ffaker/data/phone_number_ru/home_phone_prefixes +107 -0
- data/lib/ffaker/data/phone_number_ru/mobile_phone_prefixes +61 -0
- data/lib/ffaker/data/phone_number_se/phone_prefix +1 -1
- data/lib/ffaker/data/phone_number_ua/home_phone_prefixes +29 -0
- data/lib/ffaker/data/phone_number_ua/mobile_phone_prefixes +11 -0
- data/lib/ffaker/data/product/adj +1 -1
- data/lib/ffaker/data/product/b1 +1 -1
- data/lib/ffaker/data/product/noun +4 -1
- data/lib/ffaker/data/skill/specialty_end +1 -1
- data/lib/ffaker/data/skill/specialty_start +1 -1
- data/lib/ffaker/data/skill/tech_skills +1 -1
- data/lib/ffaker/data/sport_pl/summer +53 -0
- data/lib/ffaker/data/sport_pl/winter +14 -0
- data/lib/ffaker/data/sport_ru/summer +68 -0
- data/lib/ffaker/data/sport_ru/winter +20 -0
- data/lib/ffaker/data/sport_us/names +67 -0
- data/lib/ffaker/data/vehicle/color_prefixes +25 -0
- data/lib/ffaker/data/vehicle/displacements_list +1 -1
- data/lib/ffaker/data/vehicle/fuel_types_list +1 -1
- data/lib/ffaker/data/vehicle/makes_list +1 -1
- data/lib/ffaker/data/vehicle/transmissions_list +1 -1
- data/lib/ffaker/data/vehicle/upholstery_list +1 -1
- data/lib/ffaker/data/venue/venue_list +1 -1
- data/lib/ffaker/dizzle_ipsum.rb +1 -3
- data/lib/ffaker/education.rb +9 -10
- data/lib/ffaker/education_cn.rb +37 -0
- data/lib/ffaker/filesystem.rb +8 -8
- data/lib/ffaker/food.rb +2 -0
- data/lib/ffaker/food_pl.rb +65 -0
- data/lib/ffaker/freedom_ipsum.rb +20 -0
- data/lib/ffaker/game.rb +33 -0
- data/lib/ffaker/gender.rb +7 -2
- data/lib/ffaker/gender_br.rb +1 -1
- data/lib/ffaker/gender_cn.rb +1 -1
- data/lib/ffaker/gender_id.rb +0 -1
- data/lib/ffaker/gender_it.rb +17 -0
- data/lib/ffaker/gender_ja.rb +18 -0
- data/lib/ffaker/gender_jp.rb +11 -0
- data/lib/ffaker/gender_kr.rb +1 -1
- data/lib/ffaker/gender_pl.rb +19 -0
- data/lib/ffaker/gender_ru.rb +22 -0
- data/lib/ffaker/geolocation.rb +32 -22
- data/lib/ffaker/guid.rb +1 -1
- data/lib/ffaker/healthcare_ipsum.rb +1 -3
- data/lib/ffaker/healthcare_ru.rb +12 -0
- data/lib/ffaker/hipster_ipsum.rb +1 -3
- data/lib/ffaker/html_ipsum.rb +10 -4
- data/lib/ffaker/identification.rb +5 -2
- data/lib/ffaker/identification_br.rb +1 -1
- data/lib/ffaker/identification_es.rb +1 -1
- data/lib/ffaker/identification_es_cl.rb +6 -5
- data/lib/ffaker/identification_es_co.rb +2 -3
- data/lib/ffaker/identification_in.rb +15 -0
- data/lib/ffaker/identification_it.rb +30 -0
- data/lib/ffaker/identification_kr.rb +3 -3
- data/lib/ffaker/identification_mx.rb +14 -20
- data/lib/ffaker/identification_pl.rb +77 -0
- data/lib/ffaker/identification_tw.rb +24 -0
- data/lib/ffaker/image.rb +48 -0
- data/lib/ffaker/internet.rb +19 -26
- data/lib/ffaker/internet_se.rb +8 -10
- data/lib/ffaker/job.rb +1 -1
- data/lib/ffaker/job_br.rb +1 -1
- data/lib/ffaker/job_cn.rb +1 -1
- data/lib/ffaker/job_fr.rb +1 -1
- data/lib/ffaker/job_it.rb +12 -0
- data/lib/ffaker/job_ja.rb +0 -1
- data/lib/ffaker/job_kr.rb +1 -1
- data/lib/ffaker/job_vn.rb +0 -1
- data/lib/ffaker/locale.rb +8 -12
- data/lib/ffaker/lorem.rb +6 -7
- data/lib/ffaker/lorem_ar.rb +1 -1
- data/lib/ffaker/lorem_br.rb +45 -0
- data/lib/ffaker/lorem_cn.rb +1 -2
- data/lib/ffaker/lorem_fr.rb +1 -1
- data/lib/ffaker/lorem_ie.rb +40 -0
- data/lib/ffaker/lorem_it.rb +39 -0
- data/lib/ffaker/lorem_ja.rb +1 -1
- data/lib/ffaker/lorem_kr.rb +1 -1
- data/lib/ffaker/lorem_pl.rb +60 -0
- data/lib/ffaker/lorem_ru.rb +0 -1
- data/lib/ffaker/lorem_ua.rb +3 -5
- data/lib/ffaker/movie.rb +7 -4
- data/lib/ffaker/music.rb +1 -1
- data/lib/ffaker/name.rb +5 -1
- data/lib/ffaker/name_ar.rb +0 -1
- data/lib/ffaker/name_br.rb +1 -1
- data/lib/ffaker/name_cn.rb +1 -1
- data/lib/ffaker/name_cs.rb +7 -9
- data/lib/ffaker/name_da.rb +2 -4
- data/lib/ffaker/name_de.rb +1 -3
- data/lib/ffaker/name_es.rb +64 -0
- data/lib/ffaker/name_fr.rb +1 -2
- data/lib/ffaker/name_ga.rb +1 -1
- data/lib/ffaker/name_gr.rb +2 -3
- data/lib/ffaker/name_id.rb +0 -1
- data/lib/ffaker/name_in.rb +39 -0
- data/lib/ffaker/name_it.rb +2 -3
- data/lib/ffaker/name_ja.rb +1 -1
- data/lib/ffaker/name_kh.rb +2 -0
- data/lib/ffaker/name_kr.rb +1 -1
- data/lib/ffaker/name_mx.rb +4 -6
- data/lib/ffaker/name_nb.rb +1 -3
- data/lib/ffaker/name_nl.rb +1 -3
- data/lib/ffaker/name_ph.rb +1 -3
- data/lib/ffaker/name_pl.rb +1 -2
- data/lib/ffaker/name_ru.rb +32 -71
- data/lib/ffaker/name_se.rb +1 -3
- data/lib/ffaker/name_sn.rb +3 -6
- data/lib/ffaker/name_th.rb +1 -1
- data/lib/ffaker/name_th_en.rb +2 -2
- data/lib/ffaker/name_tw.rb +20 -0
- data/lib/ffaker/name_ua.rb +1 -3
- data/lib/ffaker/name_vn.rb +1 -1
- data/lib/ffaker/nato_alphabet.rb +2 -4
- data/lib/ffaker/number.rb +26 -0
- data/lib/ffaker/phone_number.rb +1 -1
- data/lib/ffaker/phone_number_au.rb +11 -12
- data/lib/ffaker/phone_number_br.rb +16 -14
- data/lib/ffaker/phone_number_ch.rb +1 -1
- data/lib/ffaker/phone_number_cu.rb +18 -27
- data/lib/ffaker/phone_number_da.rb +1 -3
- data/lib/ffaker/phone_number_de.rb +1 -2
- data/lib/ffaker/phone_number_fr.rb +50 -13
- data/lib/ffaker/phone_number_id.rb +2 -6
- data/lib/ffaker/phone_number_it.rb +9 -7
- data/lib/ffaker/phone_number_ja.rb +88 -0
- data/lib/ffaker/phone_number_kr.rb +1 -1
- data/lib/ffaker/phone_number_mx.rb +1 -2
- data/lib/ffaker/phone_number_nl.rb +9 -12
- data/lib/ffaker/phone_number_pl.rb +68 -0
- data/lib/ffaker/phone_number_ru.rb +120 -0
- data/lib/ffaker/phone_number_se.rb +1 -1
- data/lib/ffaker/phone_number_sg.rb +1 -1
- data/lib/ffaker/phone_number_sn.rb +12 -19
- data/lib/ffaker/phone_number_tw.rb +49 -0
- data/lib/ffaker/phone_number_ua.rb +42 -0
- data/lib/ffaker/product.rb +10 -12
- data/lib/ffaker/sem_ver.rb +19 -0
- data/lib/ffaker/skill.rb +1 -1
- data/lib/ffaker/sport.rb +4 -0
- data/lib/ffaker/sport_pl.rb +25 -0
- data/lib/ffaker/sport_ru.rb +25 -0
- data/lib/ffaker/sport_us.rb +12 -0
- data/lib/ffaker/ssn.rb +7 -2
- data/lib/ffaker/ssn_mx.rb +1 -2
- data/lib/ffaker/ssn_se.rb +14 -42
- data/lib/ffaker/string.rb +17 -16
- data/lib/ffaker/time.rb +39 -21
- data/lib/ffaker/tweet.rb +4 -4
- data/lib/ffaker/unit.rb +10 -11
- data/lib/ffaker/unit_english.rb +19 -22
- data/lib/ffaker/unit_metric.rb +16 -19
- data/lib/ffaker/utils/array_utils.rb +8 -5
- data/lib/ffaker/utils/module_utils.rb +26 -4
- data/lib/ffaker/utils/random_utils.rb +4 -0
- data/lib/ffaker/utils/unique_utils.rb +0 -1
- data/lib/ffaker/vehicle.rb +67 -9
- data/lib/ffaker/venue.rb +1 -1
- data/lib/ffaker/youtube.rb +1 -1
- data/lib/ffaker.rb +199 -17
- data/lib/version.rb +5 -0
- data/scripts/benchmark.rb +12 -11
- data/scripts/profiling.rb +3 -1
- data/scripts/reference.rb +21 -17
- data/test/helper.rb +38 -1
- data/test/test_address.rb +2 -2
- data/test/test_address_au.rb +7 -8
- data/test/test_address_br.rb +17 -4
- data/test/test_address_ca.rb +2 -2
- data/test/test_address_ch.rb +2 -2
- data/test/test_address_ch_de.rb +2 -2
- data/test/test_address_ch_fr.rb +2 -2
- data/test/test_address_ch_it.rb +2 -2
- data/test/test_address_da.rb +2 -2
- data/test/test_address_de.rb +2 -2
- data/test/test_address_fi.rb +5 -6
- data/test/test_address_fr.rb +3 -4
- data/test/test_address_gr.rb +2 -2
- data/test/test_address_id.rb +2 -3
- data/test/test_address_in.rb +2 -2
- data/test/test_address_it.rb +12 -0
- data/test/test_address_ja.rb +2 -3
- data/test/test_address_kr.rb +1 -2
- data/test/test_address_mx.rb +2 -3
- data/test/test_address_nl.rb +3 -3
- data/test/test_address_pl.rb +1 -2
- data/test/test_address_ru.rb +2 -2
- data/test/test_address_se.rb +5 -5
- data/test/test_address_sn.rb +2 -5
- data/test/test_address_ua.rb +2 -2
- data/test/test_address_uk.rb +2 -2
- data/test/test_address_us.rb +11 -2
- data/test/test_airline.rb +2 -2
- data/test/test_animal.rb +2 -2
- data/test/test_animal_br.rb +17 -0
- data/test/test_animal_cn.rb +17 -0
- data/test/test_animal_es.rb +17 -0
- data/test/test_animal_pl.rb +17 -0
- data/test/test_animal_us.rb +17 -0
- data/test/test_array_utils.rb +3 -3
- data/test/test_avatar.rb +5 -3
- data/test/test_aws.rb +3 -3
- data/test/test_bacon_ipsum.rb +2 -2
- data/test/test_bank.rb +53 -0
- data/test/test_book.rb +10 -5
- data/test/test_boolean.rb +3 -3
- data/test/test_cheesy_lingo.rb +5 -3
- data/test/test_code.rb +39 -0
- data/test/test_color.rb +5 -5
- data/test/test_color_pl.rb +13 -0
- data/test/test_color_ua.rb +2 -2
- data/test/test_company.rb +4 -4
- data/test/test_company_cn.rb +2 -2
- data/test/test_company_fr.rb +33 -0
- data/test/test_company_it.rb +2 -2
- data/test/test_company_ja.rb +28 -0
- data/test/test_company_se.rb +2 -2
- data/test/test_conference.rb +2 -2
- data/test/test_course_mathematiques.rb +3 -1
- data/test/test_course_philosophie.rb +3 -1
- data/test/test_currency.rb +3 -3
- data/test/test_dizzle_ipsum.rb +2 -2
- data/test/test_education.rb +2 -2
- data/test/test_education_cn.rb +29 -0
- data/test/{test_faker.rb → test_ffaker.rb} +7 -3
- data/test/test_filesystem.rb +13 -5
- data/test/test_food.rb +3 -3
- data/test/test_food_pl.rb +61 -0
- data/test/test_freedom_ipsum.rb +21 -0
- data/test/test_game.rb +28 -0
- data/test/test_gender.rb +9 -4
- data/test/test_gender_br.rb +2 -2
- data/test/test_gender_cn.rb +2 -2
- data/test/test_gender_id.rb +1 -2
- data/test/test_gender_it.rb +27 -0
- data/test/test_gender_ja.rb +27 -0
- data/test/test_gender_jp.rb +27 -0
- data/test/test_gender_kr.rb +2 -2
- data/test/test_gender_pl.rb +27 -0
- data/test/test_gender_ru.rb +23 -0
- data/test/test_geolocation.rb +4 -4
- data/test/test_guid.rb +2 -2
- data/test/test_healthcare_ipsum.rb +3 -1
- data/test/test_healthcare_ru.rb +19 -0
- data/test/test_hipster_ipsum.rb +3 -3
- data/test/test_html_ipsum.rb +20 -14
- data/test/test_identification.rb +3 -3
- data/test/test_identification_br.rb +2 -2
- data/test/test_identification_co.rb +5 -3
- data/test/test_identification_es.rb +2 -2
- data/test/test_identification_es_cl.rb +3 -3
- data/test/test_identification_es_mx.rb +2 -3
- data/test/test_identification_in.rb +20 -0
- data/test/test_identification_it.rb +34 -0
- data/test/test_identification_kr.rb +2 -2
- data/test/test_identification_pl.rb +28 -0
- data/test/test_identification_tw.rb +17 -0
- data/test/test_image.rb +51 -0
- data/test/test_internet.rb +16 -16
- data/test/test_internet_se.rb +7 -7
- data/test/test_job.rb +2 -2
- data/test/test_job_br.rb +2 -2
- data/test/test_job_cn.rb +3 -3
- data/test/test_job_fr.rb +2 -2
- data/test/test_job_it.rb +17 -0
- data/test/test_job_ja.rb +3 -3
- data/test/test_job_kr.rb +3 -3
- data/test/test_job_vn.rb +2 -3
- data/test/test_locale.rb +2 -2
- data/test/test_lorem.rb +6 -2
- data/test/test_lorem_ar.rb +3 -4
- data/test/test_lorem_br.rb +62 -0
- data/test/test_lorem_cn.rb +8 -8
- data/test/test_lorem_fr.rb +15 -13
- data/test/test_lorem_ie.rb +52 -0
- data/test/test_lorem_it.rb +51 -0
- data/test/test_lorem_ja.rb +5 -5
- data/test/test_lorem_kr.rb +5 -5
- data/test/test_lorem_pl.rb +51 -0
- data/test/test_lorem_ru.rb +4 -5
- data/test/test_lorem_ua.rb +5 -5
- data/test/test_module_utils.rb +2 -2
- data/test/test_movie.rb +2 -2
- data/test/test_music.rb +6 -6
- data/test/test_name.rb +7 -3
- data/test/test_name_ar.rb +1 -2
- data/test/test_name_br.rb +2 -2
- data/test/test_name_cn.rb +2 -2
- data/test/test_name_cs.rb +3 -4
- data/test/test_name_da.rb +6 -6
- data/test/test_name_de.rb +2 -2
- data/test/test_name_es.rb +70 -0
- data/test/test_name_fr.rb +2 -3
- data/test/test_name_ga.rb +2 -2
- data/test/test_name_gr.rb +2 -2
- data/test/test_name_id.rb +1 -2
- data/test/test_name_it.rb +2 -3
- data/test/test_name_ja.rb +2 -2
- data/test/test_name_kh.rb +10 -8
- data/test/test_name_kr.rb +2 -2
- data/test/test_name_mx.rb +2 -3
- data/test/test_name_nb.rb +2 -2
- data/test/test_name_nl.rb +2 -2
- data/test/test_name_ph.rb +3 -3
- data/test/test_name_pl.rb +1 -2
- data/test/test_name_ru.rb +38 -48
- data/test/test_name_se.rb +2 -2
- data/test/test_name_sn.rb +2 -3
- data/test/test_name_th.rb +2 -2
- data/test/test_name_th_en.rb +2 -2
- data/test/test_name_tw.rb +28 -0
- data/test/test_name_ua.rb +4 -4
- data/test/test_name_vn.rb +2 -2
- data/test/test_nato_alphabet.rb +2 -2
- data/test/test_number.rb +45 -0
- data/test/test_phone_number.rb +3 -3
- data/test/test_phone_number_au.rb +5 -6
- data/test/test_phone_number_br.rb +12 -5
- data/test/test_phone_number_cu.rb +5 -12
- data/test/test_phone_number_da.rb +2 -3
- data/test/test_phone_number_de.rb +2 -3
- data/test/test_phone_number_fr.rb +57 -0
- data/test/test_phone_number_id.rb +1 -2
- data/test/test_phone_number_it.rb +12 -0
- data/test/test_phone_number_ja.rb +63 -0
- data/test/test_phone_number_kr.rb +2 -2
- data/test/test_phone_number_mx.rb +2 -3
- data/test/test_phone_number_nl.rb +2 -3
- data/test/test_phone_number_pl.rb +56 -0
- data/test/test_phone_number_ru.rb +76 -0
- data/test/test_phone_number_se.rb +5 -5
- data/test/test_phone_number_sg.rb +2 -2
- data/test/test_phone_number_sn.rb +4 -5
- data/test/test_phone_number_tw.rb +42 -0
- data/test/test_phone_number_ua.rb +38 -0
- data/test/test_products.rb +2 -2
- data/test/test_sem_ver.rb +18 -0
- data/test/test_skill.rb +2 -2
- data/test/test_sport_pl.rb +30 -0
- data/test/test_sport_ru.rb +30 -0
- data/test/test_sport_us.rb +17 -0
- data/test/test_sports.rb +2 -2
- data/test/test_ssn.rb +18 -4
- data/test/test_ssn_mx.rb +2 -3
- data/test/test_ssn_se.rb +10 -12
- data/test/test_string.rb +8 -8
- data/test/test_time.rb +61 -18
- data/test/test_tweet.rb +11 -11
- data/test/test_unique_utils.rb +2 -2
- data/test/test_units.rb +3 -3
- data/test/test_units_english.rb +2 -3
- data/test/test_units_metric.rb +2 -3
- data/test/test_vehicle.rb +10 -5
- data/test/test_venue.rb +2 -2
- data/test/test_youtube.rb +2 -2
- metadata +402 -143
- data/lib/ffaker/data/address_jp/city +0 -127
- data/lib/ffaker/data/address_jp/designated_city +0 -20
- data/lib/ffaker/data/address_jp/street +0 -37
- data/lib/ffaker/data/address_jp/tokyo_ward +0 -23
- data/lib/ffaker/data/address_jp/village +0 -183
- data/lib/ffaker/data/address_jp/ward +0 -188
data/lib/ffaker/name_ja.rb
CHANGED
data/lib/ffaker/name_kh.rb
CHANGED
data/lib/ffaker/name_kr.rb
CHANGED
data/lib/ffaker/name_mx.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
require 'ffaker/name'
|
1
|
+
# frozen_string_literal: true
|
4
2
|
|
5
3
|
module FFaker
|
6
4
|
# guapolo github.com/guapolo
|
@@ -26,7 +24,7 @@ module FFaker
|
|
26
24
|
# Full name with prefix according to gender, possibly with middle_name
|
27
25
|
def full_name_prefix(gender = :any)
|
28
26
|
case gender
|
29
|
-
when :any
|
27
|
+
when :any
|
30
28
|
case rand(0..8)
|
31
29
|
when 0, 3, 6, 8 then "#{female_prefix} #{female_name} #{paternal_last_names}"
|
32
30
|
else "#{male_prefix} #{male_name} #{paternal_last_names}"
|
@@ -40,7 +38,7 @@ module FFaker
|
|
40
38
|
# Full name with no prefix according to gender, possibly with middle_name
|
41
39
|
def full_name_no_prefix(gender = :any)
|
42
40
|
case gender
|
43
|
-
when :any
|
41
|
+
when :any
|
44
42
|
case rand(0..8)
|
45
43
|
when 0, 3, 6, 8 then "#{female_name} #{paternal_last_names}"
|
46
44
|
else "#{male_name} #{paternal_last_names}"
|
@@ -70,7 +68,7 @@ module FFaker
|
|
70
68
|
# A single name according to gender parameter
|
71
69
|
def name(gender = :any)
|
72
70
|
case gender
|
73
|
-
when :any then rand(0..1)
|
71
|
+
when :any then rand(0..1).zero? ? name(:male) : name(:female)
|
74
72
|
when :male then fetch_sample(MALE_FIRST_NAMES)
|
75
73
|
when :female then fetch_sample(FEMALE_FIRST_NAMES)
|
76
74
|
else raise ArgumentError, 'Invalid gender, must be one of :any, :male, :female'
|
data/lib/ffaker/name_nb.rb
CHANGED
data/lib/ffaker/name_nl.rb
CHANGED
data/lib/ffaker/name_ph.rb
CHANGED
data/lib/ffaker/name_pl.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
module FFaker
|
5
|
-
# Author Walerian Sobczak <walerian.sobczak@gmail.com> github.com/walerian777
|
6
4
|
# Inspirations:
|
7
5
|
# https://pl.wiktionary.org/wiki/Indeks:Polski_-_Imiona
|
8
6
|
# https://pl.wiktionary.org/wiki/Kategoria:Polskie_nazwiska_m%C4%99skie
|
@@ -93,6 +91,7 @@ module FFaker
|
|
93
91
|
def name_for_gender(name_type, gender) # :nodoc:
|
94
92
|
raise(ArgumentError, "Gender must be one of: #{GENDERS}") unless GENDERS.include?(gender)
|
95
93
|
return send("#{gender}_#{name_type}") unless gender == :random
|
94
|
+
|
96
95
|
fetch_sample([send("female_#{name_type}"), send("male_#{name_type}")])
|
97
96
|
end
|
98
97
|
end
|
data/lib/ffaker/name_ru.rb
CHANGED
@@ -1,94 +1,55 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
require 'ffaker/name'
|
1
|
+
# frozen_string_literal: true
|
4
2
|
|
5
3
|
module FFaker
|
6
4
|
module NameRU
|
7
|
-
include FFaker::Name
|
8
|
-
|
9
5
|
extend ModuleUtils
|
10
6
|
extend self
|
11
7
|
|
12
|
-
|
13
|
-
LAST_NAMES =
|
14
|
-
male: %w[Абарун Абишев Авсюк Агаянц Адрющенков Азаркович Айзатуллов Акуненков Алабян Алвердашвили Алегин Александрович Андоловский Андрушко Анзимиров Анисимович Анпилов Аредьев Арихин Артыкнаев Артюнов Асикайнен Ахагинский Ахмедзянов Ахундзянов Ачамович Аширметов Багникян Бадашков Баздорев Базяев Балабанцев Балдихин Барчунов Бахалдин Бахонов Бачко Безин Беккерман Белоусов Бельцев Берберян Бернштейн Бессалов Биневич Бирюченко Битлер Благородов Блазнин Бойко Бордовкин Борисов Борсаков Браговский Бретнев Бричко Брыжахин Буженков Буртняк Бучников Ваиренко Васющенков Вердиянин Вирютин Воликов Волнаков Втонов Выдрич Выпирайлов Гайдашев Галабцев Ганецкий Гарбко Гарьковец Гасымов Гбидеров Гваськов Георгадзе Геркин Герливанов Гидаспов Гилюк Гладырин Глудман Глуздак Голанджан Головашеч Голынков Голяновский Гостюшин Гревизирский Грибоедов Гридасов Грустнев Губенский Гудолевич Давлетинин Денежко Джиджаев Дзеярский Долганов Долганюк Долгарев Дробуш Дружиненко Дружинкин Дымонт Дышев Евгенев Елепский Енанешников Еременко Ефимовцев Жеребченко Жутаев Забарный Загуменников Зарубенко Засенко Зашбахидзе Зворыкин Зиманенков Зубоедов Иванкович Иванковский Иванов Ивлюшин Избищев Кавин Казинец Калацкий Калуженко Камгатных Камзин Каракулян Карапай Карнацкий Карнеичев Карпышев Картманов Карцевадзе Кафтаев Кафтан Квалиашвили Квашихин Кендалиев Кирилко Климкевич Климнюк Ключенович Кобидзе Колюковский Коргутов Корленко Корлов Коробцов Коротько Корсов Кособок Коювский Крутилин Крышко Куварихин Кузьмин Купецкий Куприн Купцин Купырин Кустарников Кутиев Кухтов Кушнырь Кылосов Лабушкин Лагутаев Лагуткин Лапатиев Ларенцев Латьенов Лашевич Летшов Лечбинский Лизлов Лиштван Ловчев Ломашевич Лопонос Лотев Луговенко Ляховенко Магаметшапиев Майоров Маконько Малишевский Мамычкин Манукиан Маракшаев Марудин Марульский Маслов Матиас Матьязов Матюшкин Машурик Медведев Медвежинский Медянский Мелюшкин Мендусов Меринсон Милославов Мирошничев Мирсианов Митракович Михайлов Михитарян Михлин Мильцын Мицин Можелев Мокроус Мольвинских Монин Морадудин Моренов Мугрузин Мухаматкуров Мухляев Муюнин Наххомов Невкин Нежальский Немченинов Никоноркин Ободкин Огуркис Одокий Озепов Оковаиков Олышев Олянюк Оршаковский Остроухих Ошков Паникин Панкрушкин Паперко Пахолюк Петров Перевезев Перчуков Пидоренко Пилинский Пилищек Пипачук Пистоленко Плосконовов Подлесов Подорожний Покорчак Поладашвили Поликанин Померанцев Понченко Поскокухин Прутян Пунтиков Пусташев Пяртель Разночинцев Раслеков Рахленко Рахматуллин Ребекин Ревельский Редозубов Решетнев Римач Ройзнер Романов Рубель Руховец Сагоманян Садосюк Салошенко Сальккев Самоделко Сейсенбаев Сейтбаталов Селиончик Селуков Селюненок Семченков Серебрюхов Сидоров Скалецкий Скиженюк Скоробацкий Скрынько Слабчук Слежиков Смолянов Сморгунов Смутко Соколецкий Солонюк Старжин Страсс Стрекосов Струсов Студитских Суровкин Сченснович Сытясков Табалов Табахьян Таболов Тажвицкий Такиди Таротько Таутов Твердислов Тишайкин Ткачман Толманов Томинов Тонетов Тончиенко Топорников Торгоев Требунских Трилешинский Тряпичников Турзин Туровник Тутаров Тутейкин Тчанников Тяпко Уалентов Убкосмачев Удобников Усамединов Устилко Устькачинцев Ушахин Фалушкин Фараонов Фарбовский Фаридун Филатиков Фимошин Французов Фумич Хайтов Ханадьян Ханыгин Харехин Харламович Хволес Хитайленко Хлопонин Ходокович Хорохорин Хотунцов Цебаньков Цейнер Цепюк Чакириди Чебышов Челокян Чингузов Чипурных Чокашвили Чугров Чудных Чудоров Чумин Шабалдин Шаблин Шавердьян Шаленок Шарыпов Шеварев Шеняк Шестоперстов Шипенко Шиповсков Шкарев Шмырков Штенников Штиков Щепоков Щепотько Щептев Эдилов Элашвили Этерман Эчин Юрнев Яиченко Якишин Янович],
|
15
|
-
female: %w[Абашникова Авекирова Агапчева Агенкова Агиева Айварова Айнутдинова Алежетдинова Алейкберова Алекперова Алимзанова Альбеева Альпатцева Андреева Аникинина Аниковская Анучкина Арисанова Арлачева Арлушкина Архангелова Астраханкина Афелова Ахилова Ачаповская Бабайцева Бабракова Байдарова Балаганина Балаганова Балдынова Баловинова Балышкина Барановская Баргугова Бардебанова Барьзева Батраева Бахшнева Бейзерова Бекмементьева Белдина Белункова Беляськова Бесова Бессчетнова Благодирова Блоха Блющицина Бобурова Богинина Болсова Бородина Босторина Брынцалова Брысковская Бубикова Бузулицкая Букаринова Булинова Бутонина Буханцова Бушевская Бушкетова Валиновская Вахрова Вахтеева Вейдова Великонская Великоруссова Венидиктова Венскова Вергилесова Верютина Ветродуева Видишева Войцеховская Волочаева Воронихина Воронянская Ворсобина Вострячкова Всеволодовская Выходова Галочкина Гарылева Гедгафова Герлова Глубокова Голованева Голодовая Голумбокова Гончаровская Гоньшева Городянская Горченкова Готавская Грабильникова Грацилева Грешищева Грешнякова Гржимальская Гузаева Гулипова Гульбинская Дашкова Деваева Декабрева Додырева Дочевская Дояматова Дубковская Думинская Дурдыева Евдашкина Евстиженкова Евтина Едомская Елецкая Елешенкова Епутаева Железная Жестякова Жилкова Забиралова Завершиева Загустина Закомоядина Закоурцева Залозная Заломаева Замарина Зановская Занцинская Занючковская Звездочкина Звержинская Зиядтдинова Зущина Иванова Ивашкива Иволга Иголкина Иднатуллина Икеряева Инелеева Иренкова Исраилова Иусова Ишинкина Кабичева Кавизина Каипова Калиновская Калинушкина Каменцева Камозина Камышкина Каннина Канькова Караульщикова Карачевская Карнилина Карпежникова Карягина Кашарова Кирилычева Кирюшенкова Клабукова Кобзина Коверенская Ковткова Когорева Козюрина Колотыркина Колушкина Комзелева Комзнкова Комитуркина Комкина Кориневская Корнюкина Корпушева Косарская Косьминина Котичева Котусева Кохтарева Кравская Кудряванова Кужненкова Куковицкая Кулакина Куличенкова Кунижева Куранчева Курепова Курлнская Курнашова Курнекова Курносенкова Курсантова Кусалова Кусачева Кутубаева Кучминская Лазова Ланятина Лашова Левенцова Лейзбовская Лепатецкая Летунова Лиходумова Локтеева Локутанская Лутавина Лушева Лынская Мазовская Малисова Малихникова Малкершина Малунеева Мамушина Манишева Манновеева Маносипова Манусова Манцырева Маразова Мардарейкина Мардулатова Маримпольская Марфутова Марьичева Матиросова Мелышкова Ментусова Мефодиева Мехидева Мизюнская Микотина Микряева Милородова Мимитаева Минхазова Мирошихина Миссуловина Михайликова Миханошина Мишалина Мораева Морозовская Моссаковская Мышова Нагановская Назмиева Невская Негодаева Нелюбова Нижегородова Ноздреватова Обминская Ольштинская Ончурова Отрочева Охматовская Павпычева Паксиватова Паленычева Паницкая Паршкина Пастушкина Перевышина Перелазная Пигулова Пилипова Пирогова Плуталовская Побаруева Побеглая Погребашкина Подсадная Поленцова Полонская Польская Помутова Помыкина Портянкина Потакина Прибытскова Прошутинская Пруцкова Птумкина Пулькова Пупырникова Пырьева Рагицкая Радомская Расшивалова Рахманькова Раченская Редюшова Ретюхина Родионочева Розинькова Ротаенова Рощупкина Руженцова Рыжеукова Рябышева Саадуева Савраскина Сайгашкина Салиханова Саманкина Самолюбова Саморохова Свитушкина Северякова Сейтбаева Семидумова Сергушева Сеуткина Сивилькаева Симнова Синаборская Скарина Скирдина Смешанова Смотраева Снегова Соткина Спирькова Спифанова Сумовская Сухаручкина Талалуева Талпыкина Таратученкова Тарачакова Тахторова Тенцова Тенькова Терентьева Техтина Тимокова Тихановская Товкуева Тогобицкая Толстикова Торгашева Торченкова Трубинкова Тугаринова Тулаева Турбатова Турлакова Туфанова Тюлева Тюликова Тютюнова Тюцкая Тюшина Ульданова Фаворская Фанасова Фаркова Фатищева Фатнева Филихина Фильштинская Фогенкова Фонанова Фругина Хабайлова Холмогорова Хамбикова Харламкина Хваловская Хлямова Хрусткова Цатурова Цивкина Цымбаева Чабаева Чебиева Чегрова Челейкина Чельднева Ченурина Черноиванова Чертова Черторыгина Четверткова Чигирижская Чичеткина Чичиркоза Чучкина Шадилова Шанина Шановая Шапатина Шаюнова Шаяхметова Шебакина Шедрина Шечковская Шикалева Шишаева Шишкова Шияновская Шпикова Шувашова Шуганикова Шумакова Шумялева Шумятьева Щепеникова Щиконикова Якиманская Яночкина]
|
16
|
-
}.freeze
|
8
|
+
FIRST_NAMES = FIRST_NAMES_MALE + FIRST_NAMES_FEMALE
|
9
|
+
LAST_NAMES = LAST_NAMES_MALE + LAST_NAMES_FEMALE
|
17
10
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
female: %w[Аврора Агнесса Агния Алевтина Александра Алёна Алина Алиса Алла Альбина Амелия Анастасия Ангелина Анжела Анна Антонина Анфиса Арина Ася Белла Берта Борислава Бронислава Валентина Валерия Ванда Варвара Василиса Венера Вера Вероника Виктория Виолетта Владислава Галина Генриетта Георгина Глафира Дана Даниэла Дарина Дарья Диана Дина Динара Доминика Ева Евгения Евдокия Екатерина Елена Елизавета Жанна Земфира Зинаида Злата Зоя Изабелла Изольда Инга Инесса Инна Ираида Ирина Ирма Ия Калерия Камилла Карина Каролина Кира Клавдия Клара Кристина Ксения Лада Лариса Леся Лидия Лилия Лина Лия Любовь Людмила Майя Маргарита Марианна Марина Мария Марта Марьяна Милена Моника Надежда Наталья Ника Нина Нонна Оксана Олеся Ольга Полина Рада Раиса Регина Рената Роза Роксана Руслана Сабина Светлана Сильва Снежана Софья Станислава Стелла Таисия Тамара Татьяна Тереза Ульяна Фаина Эдита Элла Эльвира Эльза Юлия Яна Ярослава]
|
22
|
-
}.freeze
|
11
|
+
def name
|
12
|
+
rand(0..1).zero? ? female_name : male_name
|
13
|
+
end
|
23
14
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
female: %w[Абрамовна Августовна Авдеевна Адамовна Адольфовна Адриановна Акимовна Александровна Алексеевна Альбертовна Альфредовна Анатольевна Андреевна Антоновна Ануфриевна Арамовна Ариевна Аристарховна Аркадиевна Арнольдовна Ароновна Арсеновна Артемовна Артемьевна Артуровна Аскольдовна Афанасьевна Ахметовна Ашотовна Бенедиктовна Бернаровна Богдановна Болеславовна Бонифациевна Борисовна Бориславовна Брониславовна Вадимовна Валентиновна Валерьевна Вальтеровна Васильевна Велоровна Венедиктовна Вениаминовна Викторовна Вильгельмовна Виссарионовна Витальевна Владимировна Владиславовна Вольдемаровна Всеволодовна Вячеславовна Гаврииловна Геннадьевна Генриховна Георгиевна Геральдовна Герасимовна Германовна Глебовна Гордеевна Градимировна Григорьевна Гурьевна Давыдовна Данииловна Демидовна Демьяновна Денисовна Дмитриевна Донатовна Дорофеевна Евгеньевна Евдокимовна Евстафьевна Егоровна Елисеевна Емельяновна Ермолаевна Ерофеевна Ефимовна Ефремовна Захаровна Зигмундовна Зиновьевна Ибрагимовна Ивановна Игнатовна Игоревна Измаиловна Израилевна Илларионовна Иннокентиевна Ионовна Иосифовна Ираклиевна Исаевна Казимировна Кареновна Карловна Кирилловна Клавдиевна Клементовна Климовна Кондратьевна Конкордиевна Константиновна Лазарьевна Львовна Левановна Леонардовна Леонидовна Леонтьевна Леопольдовна Любомировна Людвиговна Макаровна Максимовна Максимилиановна Маратовна Мариановна Марковна Мартиновна Матвеевна Мерабовна Мечеславовна Мироновна Мирославовна Михайловна Модестовна Моисеевна Муратовна Назаровна Натановна Наумовна Никитовна Никифоровна Николаевна Никоновна Нисоновна Нифонтовна Олеговна Онисимовна Орестовна Осиповна Оскаровна Павловна Парамоновна Петровна Платоновна Прохоровна Рафиковна Рашидовна Ринатовна Ричардовна Робертовна Родионовна Ролановна Романовна Ростиславовна Рубеновна Рудольфовна Руслановна Рустамовна Самсоновна Святославовна Севастьяновна Семеновна Серафимовна Сергеевна Соломоновна Спартаковна Станиславовна Степановна Стояновна Тамазовна Тарасовна Теодоровна Терентьевна Тиграновна Тимофеевна Тимуровна Титовна Тихоновна Трифоновна Трофимовна Устиновна Федоровна Феликсовна Феодосьевна Филимоновна Филипповна Фридриховна Харитоновна Христиановна Христофоровна Эдуардовна Эльдаровна Эмилевна Эммануиловна Эриковна Эрнестовна Юлиановна Юрьевна Якимовна Яновна Ярославовна]
|
28
|
-
}.freeze
|
29
|
-
GENDERS = %i[male female random].freeze # :nodoc:
|
15
|
+
def first_name
|
16
|
+
fetch_sample(FIRST_NAMES)
|
17
|
+
end
|
30
18
|
|
31
|
-
|
32
|
-
|
33
|
-
# all calls inside thee block:
|
34
|
-
#
|
35
|
-
# FFaker::NameRU.with_same_sex(:male) do
|
36
|
-
# person.last_name = FFaker::NameRU.last_name
|
37
|
-
# person.first_name = FFaker::NameRU.first_name
|
38
|
-
# person.patronymic = FFaker::NameRU.patronymic
|
39
|
-
# end
|
40
|
-
#
|
41
|
-
# person.last_name # => "Иванов"
|
42
|
-
# person.first_name # => "Александр"
|
43
|
-
# person.patronymic # => "Петрович"
|
44
|
-
def with_same_sex(sex = :random)
|
45
|
-
@fixed_sex = sex == :random ? GENDERS[rand(0..1)] : sex
|
46
|
-
yield
|
47
|
-
ensure
|
48
|
-
@fixed_sex = nil
|
19
|
+
def last_name
|
20
|
+
fetch_sample(LAST_NAMES)
|
49
21
|
end
|
50
22
|
|
51
|
-
|
52
|
-
|
53
|
-
#
|
54
|
-
# FFaker::NameRU.name(:male)
|
55
|
-
#
|
56
|
-
# for_sex defaults to :random.
|
57
|
-
def name(for_sex = :random)
|
58
|
-
with_same_sex(for_sex) do
|
59
|
-
case rand(0..1)
|
60
|
-
when 0 then "#{last_name} #{first_name} #{patronymic}"
|
61
|
-
else "#{first_name} #{last_name}"
|
62
|
-
end
|
63
|
-
end
|
23
|
+
def female_name
|
24
|
+
"#{first_name_female} #{last_name_female}"
|
64
25
|
end
|
65
26
|
|
66
|
-
|
67
|
-
|
68
|
-
def last_name(for_sex = :random)
|
69
|
-
fetch_sample(LAST_NAMES[select_sex(for_sex)])
|
27
|
+
def male_name
|
28
|
+
"#{first_name_male} #{last_name_male}"
|
70
29
|
end
|
71
30
|
|
72
|
-
|
73
|
-
|
74
|
-
def first_name(for_sex = :random)
|
75
|
-
fetch_sample(FIRST_NAMES[select_sex(for_sex)])
|
31
|
+
def first_name_female
|
32
|
+
fetch_sample(FIRST_NAMES_FEMALE)
|
76
33
|
end
|
77
34
|
|
78
|
-
|
79
|
-
|
80
|
-
def patronymic(for_sex = :random)
|
81
|
-
fetch_sample(PATRONYMICS[select_sex(for_sex)])
|
35
|
+
def first_name_male
|
36
|
+
fetch_sample(FIRST_NAMES_MALE)
|
82
37
|
end
|
83
38
|
|
84
|
-
|
39
|
+
def middle_name_female
|
40
|
+
fetch_sample(MIDDLE_NAMES_FEMALE)
|
41
|
+
end
|
42
|
+
|
43
|
+
def middle_name_male
|
44
|
+
fetch_sample(MIDDLE_NAMES_MALE)
|
45
|
+
end
|
46
|
+
|
47
|
+
def last_name_female
|
48
|
+
fetch_sample(LAST_NAMES_FEMALE)
|
49
|
+
end
|
85
50
|
|
86
|
-
def
|
87
|
-
|
88
|
-
given_sex = @fixed_sex || sex
|
89
|
-
raise ArgumentError, "Unknown sex #{given_sex}" \
|
90
|
-
unless GENDERS.include?(given_sex)
|
91
|
-
given_sex == :random ? GENDERS[rand(0..1)] : given_sex
|
51
|
+
def last_name_male
|
52
|
+
fetch_sample(LAST_NAMES_MALE)
|
92
53
|
end
|
93
54
|
end
|
94
55
|
end
|
data/lib/ffaker/name_se.rb
CHANGED
data/lib/ffaker/name_sn.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
|
-
# Author PapePathe<pathe.sene@gmail.com> github.com/PapePathe
|
5
4
|
# The names & first names in this module were found at this url:
|
6
5
|
# http://www.senegalaisement.com/senegal/noms_et_prenoms.html
|
7
6
|
module NameSN
|
@@ -49,10 +48,8 @@ module FFaker
|
|
49
48
|
case rand(0..5)
|
50
49
|
when 0 then "#{prefix_female} #{first_name_female} #{last_name}"
|
51
50
|
when 1 then "#{prefix_male} #{first_name_male} #{last_name}"
|
52
|
-
when 2 then "#{first_name_male} #{last_name}"
|
53
|
-
when 3 then "#{first_name_female} #{last_name}"
|
54
|
-
when 4 then "#{first_name_male} #{last_name}"
|
55
|
-
else "#{first_name_female} #{last_name}"
|
51
|
+
when 2, 4 then "#{first_name_male} #{last_name}"
|
52
|
+
when 3, 5 then "#{first_name_female} #{last_name}"
|
56
53
|
end
|
57
54
|
end
|
58
55
|
end
|
data/lib/ffaker/name_th.rb
CHANGED
data/lib/ffaker/name_th_en.rb
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module NameTW
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def name
|
9
|
+
"#{last_name}#{first_name}"
|
10
|
+
end
|
11
|
+
|
12
|
+
def first_name
|
13
|
+
fetch_sample(FIRST_NAMES)
|
14
|
+
end
|
15
|
+
|
16
|
+
def last_name
|
17
|
+
fetch_sample(LAST_NAMES)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/ffaker/name_ua.rb
CHANGED
data/lib/ffaker/name_vn.rb
CHANGED
data/lib/ffaker/nato_alphabet.rb
CHANGED
@@ -1,13 +1,11 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module NatoAlphabet
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
|
9
|
-
NUMERIC_CODES = %w[ONE TWO THREE FOUR FIVE SIX SEVEN EIGHT NINE ZERO].freeze
|
10
|
-
STOP_CODE = 'STOP'.freeze
|
8
|
+
STOP_CODE = 'STOP'
|
11
9
|
CODES = ALPHABET_CODES + NUMERIC_CODES + [STOP_CODE]
|
12
10
|
|
13
11
|
def code
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module Number
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def number(digits: 1)
|
9
|
+
FFaker.numerify(generate_pattern(digits)).to_i
|
10
|
+
end
|
11
|
+
|
12
|
+
def decimal(whole_digits: 1, fractional_digits: 1)
|
13
|
+
whole_part_pattern = generate_pattern(whole_digits)
|
14
|
+
fractional_part_pattern = generate_pattern(fractional_digits).reverse
|
15
|
+
FFaker.numerify("#{whole_part_pattern}.#{fractional_part_pattern}").to_f
|
16
|
+
end
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def generate_pattern(digits)
|
21
|
+
raise ArgumentError.new('Digits cannot be less than 1') if digits < 1
|
22
|
+
|
23
|
+
"#{fetch_sample(1..9)}#{"#" * (digits - 1)}"
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/ffaker/phone_number.rb
CHANGED
@@ -1,36 +1,35 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
|
-
# Author: wiseleyb<wiseleyb@gmail.com>
|
5
4
|
# Based on information from http://en.wikipedia.org/wiki/Telephone_numbers_in_Australia
|
6
5
|
module PhoneNumberAU
|
7
6
|
extend ModuleUtils
|
8
7
|
extend self
|
9
8
|
|
10
9
|
# Mobile prefixes
|
11
|
-
|
10
|
+
MOBILE_OPERATORS_PREFIX = %w[04 05].freeze
|
12
11
|
|
13
12
|
# Home or Work Operator prefixes
|
14
|
-
|
13
|
+
HOME_WORK_OPERATORS_PREFIX = %w[02 03 07 08].freeze
|
15
14
|
|
16
|
-
|
15
|
+
OPERATORS_PREFIX = MOBILE_OPERATORS_PREFIX + HOME_WORK_OPERATORS_PREFIX
|
17
16
|
|
18
|
-
# Return a prefix in
|
19
|
-
# @see FFaker::PhoneNumberAU::
|
17
|
+
# Return a prefix in MOBILE_OPERATORS_PREFIX
|
18
|
+
# @see FFaker::PhoneNumberAU::MOBILE_OPERATORS_PREFIX
|
20
19
|
#
|
21
20
|
def mobile_phone_prefix
|
22
|
-
fetch_sample(
|
21
|
+
fetch_sample(MOBILE_OPERATORS_PREFIX)
|
23
22
|
end
|
24
23
|
|
25
|
-
# Return a prefix in
|
26
|
-
# @see FFaker::PhoneNumberAU::
|
24
|
+
# Return a prefix in HOME_WORK_OPERATORS_PREFIX
|
25
|
+
# @see FFaker::PhoneNumberAU::HOME_WORK_OPERATORS_PREFIX
|
27
26
|
#
|
28
27
|
def home_work_phone_prefix
|
29
|
-
fetch_sample(
|
28
|
+
fetch_sample(HOME_WORK_OPERATORS_PREFIX)
|
30
29
|
end
|
31
30
|
|
32
31
|
def phone_prefix
|
33
|
-
fetch_sample(
|
32
|
+
fetch_sample(OPERATORS_PREFIX)
|
34
33
|
end
|
35
34
|
|
36
35
|
# Generates a general phone number
|
@@ -1,26 +1,31 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
|
-
#
|
5
|
-
#
|
4
|
+
# Sources:
|
5
|
+
# - https://en.wikipedia.org/wiki/Telephone_numbers_in_Brazil
|
6
|
+
# - http://www.teleco.com.br/num_cel.asp
|
7
|
+
# - http://ddd.online24hs.com.br/
|
8
|
+
# - https://tecnoblog.net/24850/prefixo-10-para-grande-sao-paulo-deve-comecar-a-funcionar-em-outubro/
|
9
|
+
# - http://agenciabrasil.ebc.com.br/geral/noticia/2016-10/numeros-de-celulares-de-todo-o-pais-terao-nove-digitos-partir-do-dia-6
|
6
10
|
#
|
7
11
|
module PhoneNumberBR
|
8
12
|
extend ModuleUtils
|
9
13
|
extend self
|
10
14
|
|
11
|
-
COUNTRY_PREFIX
|
12
|
-
AREA_CODE
|
15
|
+
COUNTRY_PREFIX = '+55'
|
16
|
+
AREA_CODE = [
|
17
|
+
11..19, 21..22, 24, 27..28, 31..35, 37..38, 41..49,
|
18
|
+
51, 53..55, 61..69, 71, 73..75, 77, 79, 81..89, 91..99
|
19
|
+
].flat_map { |x| Array(x) }.map(&:to_s).freeze
|
20
|
+
|
13
21
|
HOME_WORK_PHONE_PREFIX = %w[2 3 4 5].freeze
|
14
|
-
MOBILE_PHONE_PREFIX = %w[
|
22
|
+
MOBILE_PHONE_PREFIX = %w[96 97 98 99].freeze
|
15
23
|
PHONE_NUMBER = %w[####### ###-####].freeze
|
16
24
|
|
17
25
|
# generate a random phone number
|
18
26
|
#
|
19
27
|
def phone_number
|
20
|
-
|
21
|
-
when 0 then home_work_phone_number
|
22
|
-
when 1 then mobile_phone_number
|
23
|
-
end
|
28
|
+
rand(0..1).zero? ? home_work_phone_number : mobile_phone_number
|
24
29
|
end
|
25
30
|
|
26
31
|
def home_work_phone_number
|
@@ -34,10 +39,7 @@ module FFaker
|
|
34
39
|
# pick a random phone number with the international prefix code
|
35
40
|
#
|
36
41
|
def international_phone_number
|
37
|
-
|
38
|
-
when 0 then international_mobile_phone_number
|
39
|
-
when 1 then international_home_work_phone_number
|
40
|
-
end
|
42
|
+
rand(0..1).zero? ? international_mobile_phone_number : international_home_work_phone_number
|
41
43
|
end
|
42
44
|
|
43
45
|
def international_mobile_phone_number
|
@@ -1,34 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module FFaker
|
2
|
-
# Author: Luilver<luilver@gmail.com>
|
3
4
|
# Based on information from http://en.wikipedia.org/wiki/Telephone_numbers_in_Cuba
|
4
5
|
module PhoneNumberCU
|
5
6
|
extend ModuleUtils
|
6
7
|
extend self
|
7
8
|
|
8
9
|
# Mobile prefixes
|
9
|
-
|
10
|
+
MOBILE_OPERATORS_PREFIX = %w[05].freeze
|
10
11
|
|
11
12
|
# Home or Work Operator prefixes
|
12
|
-
|
13
|
+
HOME_WORK_OPERATORS_PREFIX = %w[
|
14
|
+
021 022 023 024 031 032 033 041 042 043 045 046 047 048 07
|
15
|
+
].freeze
|
13
16
|
|
14
|
-
|
17
|
+
OPERATORS_PREFIX = MOBILE_OPERATORS_PREFIX + HOME_WORK_OPERATORS_PREFIX
|
15
18
|
|
16
|
-
# Return a prefix in
|
17
|
-
# @see FFaker::PhoneNumberCU::
|
19
|
+
# Return a prefix in MOBILE_OPERATORS_PREFIX
|
20
|
+
# @see FFaker::PhoneNumberCU::MOBILE_OPERATORS_PREFIX
|
18
21
|
#
|
19
22
|
def mobile_phone_prefix
|
20
|
-
fetch_sample(
|
23
|
+
fetch_sample(MOBILE_OPERATORS_PREFIX)
|
21
24
|
end
|
22
25
|
|
23
|
-
# Return a prefix in
|
24
|
-
# @see FFaker::PhoneNumberCU::
|
26
|
+
# Return a prefix in HOME_WORK_OPERATORS_PREFIX
|
27
|
+
# @see FFaker::PhoneNumberCU::HOME_WORK_OPERATORS_PREFIX
|
25
28
|
#
|
26
29
|
def home_work_phone_prefix
|
27
|
-
fetch_sample(
|
30
|
+
fetch_sample(HOME_WORK_OPERATORS_PREFIX)
|
28
31
|
end
|
29
32
|
|
30
33
|
def phone_prefix
|
31
|
-
fetch_sample(
|
34
|
+
fetch_sample(OPERATORS_PREFIX)
|
32
35
|
end
|
33
36
|
|
34
37
|
# Generates a general phone number
|
@@ -52,10 +55,7 @@ module FFaker
|
|
52
55
|
# Generates general number
|
53
56
|
#
|
54
57
|
def general_phone_number
|
55
|
-
|
56
|
-
when 0 then home_work_phone_number
|
57
|
-
when 1 then mobile_phone_number
|
58
|
-
end
|
58
|
+
rand(0..1).zero? ? home_work_phone_number : mobile_phone_number
|
59
59
|
end
|
60
60
|
|
61
61
|
# Country Code is E.164 Country Code
|
@@ -67,10 +67,7 @@ module FFaker
|
|
67
67
|
# International formats
|
68
68
|
#
|
69
69
|
def international_country_code
|
70
|
-
|
71
|
-
when 0 then "00#{country_code}"
|
72
|
-
when 1 then "+#{country_code}"
|
73
|
-
end
|
70
|
+
rand(0..1).zero? ? "00#{country_code}" : "+#{country_code}"
|
74
71
|
end
|
75
72
|
|
76
73
|
def international_mobile_phone_number
|
@@ -86,10 +83,7 @@ module FFaker
|
|
86
83
|
end
|
87
84
|
|
88
85
|
def international_phone_number
|
89
|
-
|
90
|
-
when 0 then international_mobile_phone_number
|
91
|
-
when 1 then international_home_work_phone_number
|
92
|
-
end
|
86
|
+
rand(0..1).zero? ? international_mobile_phone_number : international_home_work_phone_number
|
93
87
|
end
|
94
88
|
|
95
89
|
# E.164 formats
|
@@ -112,10 +106,7 @@ module FFaker
|
|
112
106
|
end
|
113
107
|
|
114
108
|
def e164_phone_number
|
115
|
-
|
116
|
-
when 0 then e164_mobile_phone_number
|
117
|
-
when 1 then e164_home_work_phone_number
|
118
|
-
end
|
109
|
+
rand(0..1).zero? ? e164_mobile_phone_number : e164_home_work_phone_number
|
119
110
|
end
|
120
111
|
|
121
112
|
# Generates phone number
|