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/address_ua.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
require 'ffaker/address'
|
1
|
+
# frozen_string_literal: true
|
4
2
|
|
5
3
|
module FFaker
|
6
4
|
module AddressUA
|
@@ -32,7 +30,7 @@ module FFaker
|
|
32
30
|
end
|
33
31
|
|
34
32
|
def street_address(include_secondary = false)
|
35
|
-
str = "#{street_name}, #{building_number}"
|
33
|
+
str = +"#{street_name}, #{building_number}"
|
36
34
|
str << ", кв. #{appartment_number}" if include_secondary
|
37
35
|
str
|
38
36
|
end
|
data/lib/ffaker/address_uk.rb
CHANGED
data/lib/ffaker/address_us.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
require 'ffaker/address'
|
1
|
+
# frozen_string_literal: true
|
4
2
|
|
5
3
|
module FFaker
|
6
4
|
module AddressUS
|
@@ -21,8 +19,12 @@ module FFaker
|
|
21
19
|
fetch_sample(STATE)
|
22
20
|
end
|
23
21
|
|
24
|
-
def state_abbr
|
25
|
-
|
22
|
+
def state_abbr(st_name = nil)
|
23
|
+
return find_abbr(state) unless st_name
|
24
|
+
|
25
|
+
st_name = capitalize_all_words(st_name)
|
26
|
+
check_state_existence(st_name)
|
27
|
+
find_abbr(st_name)
|
26
28
|
end
|
27
29
|
|
28
30
|
def state_and_territories_abbr
|
@@ -36,5 +38,21 @@ module FFaker
|
|
36
38
|
def continental_state_abbr
|
37
39
|
fetch_sample(CONTINENTAL_STATE_ABBR)
|
38
40
|
end
|
41
|
+
|
42
|
+
private
|
43
|
+
|
44
|
+
def check_state_existence(state_name)
|
45
|
+
return if STATE.include?(state_name)
|
46
|
+
|
47
|
+
raise ArgumentError, "Unexpected state name: '#{state_name}'"
|
48
|
+
end
|
49
|
+
|
50
|
+
def find_abbr(state)
|
51
|
+
STATE_ABBR[STATE.index(state)]
|
52
|
+
end
|
53
|
+
|
54
|
+
def capitalize_all_words(string)
|
55
|
+
string.split.map(&:capitalize).join(' ')
|
56
|
+
end
|
39
57
|
end
|
40
58
|
end
|
data/lib/ffaker/airline.rb
CHANGED
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module Animal
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
# @deprecated US animals name. Moved into {AnimalUS}
|
9
|
+
def common_name
|
10
|
+
warn '[common_name] is deprecated. For animal name in english please use the AnimalUS module'
|
11
|
+
fetch_sample(COMMON_NAMES)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/ffaker/avatar.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module Avatar
|
@@ -8,11 +8,29 @@ module FFaker
|
|
8
8
|
SUPPORTED_FORMATS = %w[png jpg bmp].freeze
|
9
9
|
|
10
10
|
def image(slug = nil, size = '300x300', format = 'png', bgset = nil)
|
11
|
-
|
12
|
-
raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}" unless SUPPORTED_FORMATS.include?(format)
|
13
|
-
raise ArgumentError, 'Not a supported background number. Choose eather 1 or 2' unless bgset.nil? || (1..2).cover?(bgset.to_i)
|
11
|
+
check_passed_params(size, format, bgset)
|
14
12
|
slug ||= FFaker::Lorem.words.join
|
15
|
-
"https://robohash.org/#{slug}.#{format}?size=#{size}#{'&bgset=bg' + bgset.to_s
|
13
|
+
"https://robohash.org/#{slug}.#{format}?size=#{size}#{'&bgset=bg' + bgset.to_s if bgset}"
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def check_passed_params(size, format, bgset)
|
19
|
+
invalid_size_error unless size =~ /^[0-9]+x[0-9]+$/
|
20
|
+
invalid_format_error unless SUPPORTED_FORMATS.include?(format)
|
21
|
+
invalid_background_number unless bgset.nil? || (1..2).cover?(bgset.to_i)
|
22
|
+
end
|
23
|
+
|
24
|
+
def invalid_size_error
|
25
|
+
raise ArgumentError, 'Size should be specified in format 300x300'
|
26
|
+
end
|
27
|
+
|
28
|
+
def invalid_format_error
|
29
|
+
raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}"
|
30
|
+
end
|
31
|
+
|
32
|
+
def invalid_background_number
|
33
|
+
raise ArgumentError, 'Not a supported background number. Choose eather 1 or 2'
|
16
34
|
end
|
17
35
|
end
|
18
36
|
end
|
data/lib/ffaker/aws.rb
CHANGED
data/lib/ffaker/bacon_ipsum.rb
CHANGED
data/lib/ffaker/bank.rb
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module Bank
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
COUNTRIES = {
|
9
|
+
'AA' => 'AL##########################', # Albania
|
10
|
+
'AD' => 'AD######################', # Andorra
|
11
|
+
'AT' => 'AT##################', # Austria
|
12
|
+
'AZ' => 'AZ##????####################', # Azerbaijan
|
13
|
+
'BH' => 'BH##????##############', # Bahrain
|
14
|
+
'BY' => 'BY##????####################', # Belarus
|
15
|
+
'BE' => 'BE##############', # Belgium
|
16
|
+
'BA' => 'BA##################', # Bosnia and Herzegovina
|
17
|
+
'BR' => 'BR#########################P#', # Brazil
|
18
|
+
'BG' => 'BG##????##############', # Bulgaria
|
19
|
+
'CR' => 'CR####################', # Costa Rica
|
20
|
+
'HR' => 'HR###################', # Croatia
|
21
|
+
'CY' => 'CY##########################', # Cyprus
|
22
|
+
'CZ' => 'CZ######################', # Czech Republic
|
23
|
+
'DK' => 'DK################', # Denmark
|
24
|
+
'DO' => 'DO##????####################', # Dominican Republic
|
25
|
+
'SV' => 'SV##????####################', # El Salvador
|
26
|
+
'EE' => 'EE##################', # Estonia
|
27
|
+
'FO' => 'FO################', # Faroe Islands
|
28
|
+
'FI' => 'FI################', # Finland
|
29
|
+
'FR' => 'FR#########################', # France
|
30
|
+
'GE' => 'GE##??################', # Georgia
|
31
|
+
'DE' => 'DE####################', # Germany
|
32
|
+
'GI' => 'GI##????###############', # Gibraltar
|
33
|
+
'GR' => 'GR#########################', # Greece
|
34
|
+
'GL' => 'GL################', # Greenland
|
35
|
+
'GT' => 'GT##AGRO####################', # Guatemala
|
36
|
+
'VA' => 'VA####################', # Holy See
|
37
|
+
'HU' => 'HU##########################', # Hungary
|
38
|
+
'IS' => 'IS########################', # Iceland
|
39
|
+
'IQ' => 'IQ##????###############', # Iraq
|
40
|
+
'IE' => 'IE##????##############', # Ireland
|
41
|
+
'IL' => 'IL#####################', # Israel
|
42
|
+
'IT' => 'IT##X######################', # Italy
|
43
|
+
'JO' => 'JO##????######################', # Jordan
|
44
|
+
'KZ' => 'KZ##################', # Kazakhstan
|
45
|
+
'XK' => 'XK##################', # Kosovo
|
46
|
+
'KW' => 'KW##????######################', # Kuwait
|
47
|
+
'LV' => 'LV##????#############', # Latvia
|
48
|
+
'LB' => 'LB##########################', # Lebanon
|
49
|
+
'LI' => 'LI###################', # Liechtenstein
|
50
|
+
'LT' => 'LT##################', # Lithuania
|
51
|
+
'LU' => 'LU##################', # Luxembourg
|
52
|
+
'MT' => 'MT##MALT#######################', # Malta
|
53
|
+
'MR' => 'MR#########################', # Mauritania
|
54
|
+
'MU' => 'MU##????###################MUR', # Mauritius
|
55
|
+
'MD' => 'MD##??##################', # Moldova
|
56
|
+
'MC' => 'MC#########################', # Monaco
|
57
|
+
'ME' => 'ME####################', # Montenegro
|
58
|
+
'NL' => 'NL##????##########', # Netherlands
|
59
|
+
'MK' => 'MK#################', # North Macedonia
|
60
|
+
'NO' => 'NO#############', # Norway
|
61
|
+
'PK' => 'PK##????################', # Pakistan
|
62
|
+
'PS' => 'PS##PALS#####################', # Palestine
|
63
|
+
'PL' => 'PL##########################', # Poland
|
64
|
+
'PT' => 'PT#######################', # Portugal
|
65
|
+
'QA' => 'QA##????#####################', # Qatar
|
66
|
+
'RO' => 'RO##????################', # Romania
|
67
|
+
'LC' => 'LC##????########################', # Saint Lucia
|
68
|
+
'SM' => 'SM##P######################', # San Marino
|
69
|
+
'ST' => 'ST#######################', # Sao Tome and Principe
|
70
|
+
'SA' => 'SA######################', # Saudi Arabia
|
71
|
+
'RS' => 'RS####################', # Serbia
|
72
|
+
'SC' => 'SC##????####################USD', # Seychelles
|
73
|
+
'SK' => 'SK######################', # Slovak Republic
|
74
|
+
'SI' => 'SI#################', # Slovenia
|
75
|
+
'ES' => 'ES######################', # Spain
|
76
|
+
'SE' => 'SE######################', # Sweden
|
77
|
+
'CH' => 'CH###################', # Switzerland
|
78
|
+
'TL' => 'TL#####################', # Timor-Leste
|
79
|
+
'TN' => 'TN######################', # Tunisia
|
80
|
+
'TR' => 'TR########################', # Turkey
|
81
|
+
'UA' => 'UA###########################', # Ukraine
|
82
|
+
'AE' => 'AE#####################', # United Arab Emirates
|
83
|
+
'GB' => 'GB##????##############', # United Kingdom
|
84
|
+
'VG' => 'VG##????################' # Virgin Islands, British
|
85
|
+
}.freeze
|
86
|
+
|
87
|
+
def iban(country_code: nil)
|
88
|
+
return formatify_iban(fetch_sample(COUNTRIES.values)) unless country_code
|
89
|
+
|
90
|
+
check_country_existence(country_code)
|
91
|
+
formatify_iban(COUNTRIES[country_code.upcase])
|
92
|
+
end
|
93
|
+
|
94
|
+
def card_number
|
95
|
+
FFaker.numerify('#### #### #### ####')
|
96
|
+
end
|
97
|
+
|
98
|
+
def card_expiry_date(year_range: 5, year_latest: -5, format: '%m/%y')
|
99
|
+
FFaker::Time.date({ year_range: year_range, year_latest: year_latest }).strftime(format)
|
100
|
+
end
|
101
|
+
|
102
|
+
def card_type
|
103
|
+
fetch_sample(CARD_TYPES)
|
104
|
+
end
|
105
|
+
|
106
|
+
private
|
107
|
+
|
108
|
+
def formatify_iban(code)
|
109
|
+
FFaker.bothify(code).upcase
|
110
|
+
end
|
111
|
+
|
112
|
+
def check_country_existence(country_code)
|
113
|
+
return if COUNTRIES.keys.include?(country_code.upcase)
|
114
|
+
|
115
|
+
raise ArgumentError, "Unexpected country code: '#{country_code}'"
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
data/lib/ffaker/book.rb
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module Book
|
5
|
+
require 'cgi'
|
6
|
+
|
5
7
|
extend ModuleUtils
|
6
8
|
extend self
|
7
9
|
|
@@ -32,6 +34,15 @@ module FFaker
|
|
32
34
|
FFaker::Avatar.image(slug, size, format, bgset)
|
33
35
|
end
|
34
36
|
|
37
|
+
def orly_cover(name = title, book_author = author, top_text = genre)
|
38
|
+
'https://orly-appstore.herokuapp.com/generate?'\
|
39
|
+
"title=#{CGI.escape(name)}&"\
|
40
|
+
"top_text=#{CGI.escape(top_text)}&"\
|
41
|
+
"author=#{CGI.escape(book_author)}&"\
|
42
|
+
"image_code=#{Random.rand(1..40)}&"\
|
43
|
+
"theme=#{Random.rand(1..16)}"
|
44
|
+
end
|
45
|
+
|
35
46
|
private
|
36
47
|
|
37
48
|
def simple_title
|
data/lib/ffaker/boolean.rb
CHANGED
data/lib/ffaker/cheesy_lingo.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module CheesyLingo
|
@@ -31,11 +31,8 @@ module FFaker
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def paragraph(number_of_phrases = 10)
|
34
|
-
p = fetch_sample(CHEESY_PHRASES).capitalize
|
35
|
-
(number_of_phrases - 1).times
|
36
|
-
s = " #{fetch_sample(CHEESY_PHRASES)}"
|
37
|
-
p << s
|
38
|
-
end
|
34
|
+
p = +fetch_sample(CHEESY_PHRASES).capitalize
|
35
|
+
(number_of_phrases - 1).times { p << " #{fetch_sample(CHEESY_PHRASES)}" }
|
39
36
|
p << '.'
|
40
37
|
end
|
41
38
|
end
|
data/lib/ffaker/code.rb
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module Code
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def npi(legacy: false)
|
9
|
+
max = legacy ? 299_999_999 : 999_999_999
|
10
|
+
base_npi = rand(100_000_000..max).to_s
|
11
|
+
|
12
|
+
summed_digits = base_npi
|
13
|
+
.chars
|
14
|
+
.each_with_index
|
15
|
+
.map { |n, i| (i.even? ? n.to_i * 2 : n).to_s }
|
16
|
+
.join
|
17
|
+
.chars
|
18
|
+
.inject(0) { |sum, digit| sum + digit.to_i }
|
19
|
+
|
20
|
+
npi_checksum = (10 - (24 + summed_digits) % 10).to_s.chars.last
|
21
|
+
|
22
|
+
base_npi + npi_checksum
|
23
|
+
end
|
24
|
+
|
25
|
+
def ean
|
26
|
+
ean = rand(100_000_000_000..999_999_999_999).to_s
|
27
|
+
|
28
|
+
sum = 0
|
29
|
+
ean.chars.each_with_index { |c, i| sum += c.to_i * (i.odd? ? 3 : 1) }
|
30
|
+
|
31
|
+
nearest_multiple_of_ten = sum.round(-1)
|
32
|
+
nearest_multiple_of_ten += 10 if nearest_multiple_of_ten < sum
|
33
|
+
|
34
|
+
"#{ean}#{nearest_multiple_of_ten - sum}"
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
data/lib/ffaker/color.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module Color
|
@@ -18,15 +18,15 @@ module FFaker
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def rgb_list
|
21
|
-
|
21
|
+
rgb_array.join(',')
|
22
22
|
end
|
23
23
|
|
24
24
|
def rgba_array
|
25
|
-
|
25
|
+
rgb_array << random_opacity_value
|
26
26
|
end
|
27
27
|
|
28
28
|
def rgba_list
|
29
|
-
|
29
|
+
rgba_array.join(',')
|
30
30
|
end
|
31
31
|
|
32
32
|
def hsl_array
|
@@ -34,15 +34,15 @@ module FFaker
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def hsl_list
|
37
|
-
|
37
|
+
hsl_array.join(',')
|
38
38
|
end
|
39
39
|
|
40
40
|
def hsla_array
|
41
|
-
|
41
|
+
hsl_array << random_opacity_value
|
42
42
|
end
|
43
43
|
|
44
44
|
def hsla_list
|
45
|
-
|
45
|
+
hsla_array.join(',')
|
46
46
|
end
|
47
47
|
|
48
48
|
private
|
data/lib/ffaker/color_ua.rb
CHANGED
data/lib/ffaker/company.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module Company
|
@@ -35,12 +35,9 @@ module FFaker
|
|
35
35
|
|
36
36
|
def position
|
37
37
|
case rand(0..2)
|
38
|
-
when 0 then
|
39
|
-
|
40
|
-
when
|
41
|
-
[fetch_sample(POSITION_AREAS), fetch_sample(POSITIONS)]
|
42
|
-
when 2 then
|
43
|
-
[fetch_sample(POSITION_PREFIXES), fetch_sample(POSITION_AREAS), fetch_sample(POSITIONS)]
|
38
|
+
when 0 then [fetch_sample(POSITION_PREFIXES), fetch_sample(POSITIONS)]
|
39
|
+
when 1 then [fetch_sample(POSITION_AREAS), fetch_sample(POSITIONS)]
|
40
|
+
when 2 then [fetch_sample(POSITION_PREFIXES), fetch_sample(POSITION_AREAS), fetch_sample(POSITIONS)]
|
44
41
|
end.join(' ')
|
45
42
|
end
|
46
43
|
end
|
data/lib/ffaker/company_cn.rb
CHANGED
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module CompanyFR
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
SUFFIXES = %w[SA et\ fils SARL Groupe].freeze
|
9
|
+
|
10
|
+
def name
|
11
|
+
case rand(0..2)
|
12
|
+
when 0 then "#{NameFR.last_name} #{suffix}"
|
13
|
+
when 1 then "#{NameFR.last_name}-#{NameFR.last_name}"
|
14
|
+
when 2 then format('%s, %s and %s', NameFR.last_name, NameFR.last_name, NameFR.last_name)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def suffix
|
19
|
+
fetch_sample(SUFFIXES)
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get a random French SIREN number. See more here https://fr.wikipedia.org/wiki/Syst%C3%A8me_d%27identification_du_r%C3%A9pertoire_des_entreprises
|
23
|
+
def siren
|
24
|
+
base = FFaker.numerify('########')
|
25
|
+
base + luhn_check(base).to_s
|
26
|
+
end
|
27
|
+
|
28
|
+
# Produces a company french siret number.
|
29
|
+
def siret
|
30
|
+
location = rand(0..99).to_s.rjust(4, '0')
|
31
|
+
org_no = siren + location
|
32
|
+
org_no + luhn_check(org_no).to_s
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/lib/ffaker/company_it.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module CompanyIT
|
@@ -33,7 +33,9 @@ module FFaker
|
|
33
33
|
base = matricola + office_code.chars.map(&:to_i)
|
34
34
|
|
35
35
|
# Thanks https://stackoverflow.com/a/9189731/1627766
|
36
|
-
sum = base.reverse.each_slice(2).flat_map
|
36
|
+
sum = base.reverse.each_slice(2).flat_map do |x, y = 0|
|
37
|
+
[(x * 2).divmod(10), y]
|
38
|
+
end.flatten.sum
|
37
39
|
|
38
40
|
control_digit = (10 - (sum % 10)) % 10
|
39
41
|
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module CompanyJA
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
TYPES = %w[株式会社 有限会社].freeze
|
9
|
+
DETAILED_TYPES = %w[ホールディングス 建設 商業 書店 不動産 銀行 証券].freeze
|
10
|
+
POSITIONS = %w[会長 社長 部長 課長 係長 社員 契約社員 派遣社員 アルバイト インターン].freeze
|
11
|
+
|
12
|
+
def name
|
13
|
+
case rand(0..2)
|
14
|
+
when 0 then "#{NameJA.last_name}#{fetch_sample(TYPES)}"
|
15
|
+
when 1 then "#{fetch_sample(TYPES)}#{NameJA.last_name}"
|
16
|
+
when 2 then "#{NameJA.last_name}#{fetch_sample(DETAILED_TYPES)}"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def position
|
21
|
+
fetch_sample(POSITIONS)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/ffaker/company_se.rb
CHANGED
data/lib/ffaker/conference.rb
CHANGED
@@ -1,10 +1,11 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module FFaker
|
4
4
|
module CoursesFR
|
5
5
|
module Mathematiques
|
6
6
|
extend ModuleUtils
|
7
7
|
extend self
|
8
|
+
|
8
9
|
def lesson
|
9
10
|
fetch_sample(LESSONS)
|
10
11
|
end
|
@@ -13,6 +14,7 @@ module FFaker
|
|
13
14
|
module Philosophie
|
14
15
|
extend ModuleUtils
|
15
16
|
extend self
|
17
|
+
|
16
18
|
def lesson
|
17
19
|
fetch_sample(LESSONS)
|
18
20
|
end
|
data/lib/ffaker/currency.rb
CHANGED