ffaker 2.15.0 → 2.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog.md +31 -0
- data/README.md +6 -4
- data/REFERENCE.md +1485 -1257
- data/Rakefile +3 -3
- data/ffaker.gemspec +8 -5
- data/lib/ffaker.rb +19 -4
- data/lib/ffaker/address_au.rb +1 -1
- data/lib/ffaker/address_br.rb +1 -1
- data/lib/ffaker/address_ca.rb +1 -1
- data/lib/ffaker/address_ch.rb +0 -2
- data/lib/ffaker/address_ch_de.rb +0 -2
- data/lib/ffaker/address_ch_fr.rb +0 -2
- data/lib/ffaker/address_ch_it.rb +0 -2
- data/lib/ffaker/address_da.rb +0 -2
- data/lib/ffaker/address_de.rb +0 -2
- data/lib/ffaker/address_fi.rb +0 -2
- data/lib/ffaker/address_fr.rb +0 -2
- data/lib/ffaker/address_gr.rb +0 -2
- data/lib/ffaker/address_id.rb +0 -2
- data/lib/ffaker/address_in.rb +0 -2
- data/lib/ffaker/address_it.rb +37 -0
- data/lib/ffaker/address_ja.rb +0 -2
- data/lib/ffaker/address_mx.rb +2 -8
- data/lib/ffaker/address_nl.rb +1 -3
- data/lib/ffaker/address_ru.rb +0 -2
- data/lib/ffaker/address_se.rb +0 -2
- data/lib/ffaker/address_sn.rb +0 -2
- data/lib/ffaker/address_ua.rb +0 -2
- data/lib/ffaker/address_uk.rb +0 -2
- data/lib/ffaker/address_us.rb +0 -2
- data/lib/ffaker/animal.rb +1 -1
- data/lib/ffaker/bacon_ipsum.rb +0 -2
- data/lib/ffaker/code.rb +6 -6
- data/lib/ffaker/company_fr.rb +35 -0
- data/lib/ffaker/company_ja.rb +1 -1
- data/lib/ffaker/{courses.rb → courses_fr.rb} +2 -0
- data/lib/ffaker/data/address_br/city +0 -1
- data/lib/ffaker/data/address_br/state +1 -1
- data/lib/ffaker/data/address_it/city +111 -0
- data/lib/ffaker/data/address_it/region +20 -0
- data/lib/ffaker/data/filesystem/extension +31 -31
- 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/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/lorem/words +0 -67
- data/lib/ffaker/data/lorem_br/characters +36 -0
- data/lib/ffaker/data/lorem_br/words +183 -0
- data/lib/ffaker/data/lorem_it/words +321 -0
- data/lib/ffaker/data/name/pronouns +1 -1
- data/lib/ffaker/data/name_ga/first_names_male +286 -286
- 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/sport_ru/summer +68 -0
- data/lib/ffaker/data/sport_ru/winter +20 -0
- data/lib/ffaker/dizzle_ipsum.rb +0 -2
- data/lib/ffaker/education.rb +4 -8
- data/lib/ffaker/education_cn.rb +3 -6
- data/lib/ffaker/filesystem.rb +7 -7
- 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_it.rb +17 -0
- data/lib/ffaker/gender_ru.rb +22 -0
- data/lib/ffaker/healthcare_ipsum.rb +0 -2
- data/lib/ffaker/hipster_ipsum.rb +0 -2
- data/lib/ffaker/identification_es_cl.rb +0 -2
- data/lib/ffaker/identification_es_co.rb +0 -1
- data/lib/ffaker/identification_in.rb +15 -0
- data/lib/ffaker/identification_it.rb +30 -0
- data/lib/ffaker/identification_kr.rb +1 -1
- data/lib/ffaker/identification_mx.rb +1 -3
- data/lib/ffaker/identification_tw.rb +1 -1
- data/lib/ffaker/image.rb +8 -11
- data/lib/ffaker/internet.rb +1 -1
- data/lib/ffaker/internet_se.rb +1 -3
- data/lib/ffaker/job_it.rb +12 -0
- data/lib/ffaker/lorem_br.rb +45 -0
- data/lib/ffaker/lorem_cn.rb +0 -1
- data/lib/ffaker/lorem_it.rb +39 -0
- data/lib/ffaker/name_cs.rb +0 -2
- data/lib/ffaker/name_da.rb +0 -2
- data/lib/ffaker/name_de.rb +0 -2
- data/lib/ffaker/name_mx.rb +2 -4
- data/lib/ffaker/name_nb.rb +0 -2
- data/lib/ffaker/name_nl.rb +0 -2
- data/lib/ffaker/name_ph.rb +0 -2
- data/lib/ffaker/name_ru.rb +0 -2
- data/lib/ffaker/name_se.rb +0 -2
- data/lib/ffaker/name_th_en.rb +1 -1
- data/lib/ffaker/name_ua.rb +0 -2
- data/lib/ffaker/phone_number_br.rb +2 -2
- data/lib/ffaker/phone_number_da.rb +0 -1
- data/lib/ffaker/phone_number_ja.rb +88 -0
- data/lib/ffaker/product.rb +1 -1
- data/lib/ffaker/sport_ru.rb +25 -0
- data/lib/ffaker/ssn.rb +1 -3
- data/lib/ffaker/ssn_se.rb +0 -19
- data/lib/ffaker/string.rb +5 -5
- data/lib/ffaker/unit.rb +9 -10
- data/lib/ffaker/unit_english.rb +18 -21
- data/lib/ffaker/unit_metric.rb +15 -18
- data/lib/ffaker/utils/array_utils.rb +1 -1
- data/lib/ffaker/utils/module_utils.rb +23 -3
- data/lib/ffaker/vehicle.rb +1 -1
- data/lib/version.rb +1 -1
- data/scripts/profiling.rb +1 -1
- data/scripts/reference.rb +2 -3
- data/test/helper.rb +4 -4
- data/test/test_address.rb +1 -1
- data/test/test_address_au.rb +3 -3
- data/test/test_address_br.rb +2 -2
- data/test/test_address_ca.rb +1 -1
- data/test/test_address_ch.rb +1 -1
- data/test/test_address_ch_de.rb +1 -1
- data/test/test_address_ch_fr.rb +1 -1
- data/test/test_address_ch_it.rb +1 -1
- data/test/test_address_da.rb +1 -1
- data/test/test_address_de.rb +1 -1
- data/test/test_address_fi.rb +3 -3
- data/test/test_address_fr.rb +1 -1
- data/test/test_address_gr.rb +1 -1
- data/test/test_address_id.rb +2 -2
- data/test/test_address_in.rb +1 -1
- data/test/test_address_it.rb +12 -0
- data/test/test_address_ja.rb +2 -2
- data/test/test_address_kr.rb +1 -1
- data/test/test_address_mx.rb +1 -1
- data/test/test_address_nl.rb +2 -2
- data/test/test_address_pl.rb +1 -1
- data/test/test_address_ru.rb +1 -1
- data/test/test_address_se.rb +3 -3
- data/test/test_address_sn.rb +1 -1
- data/test/test_address_ua.rb +1 -1
- data/test/test_address_uk.rb +1 -1
- data/test/test_address_us.rb +1 -1
- data/test/test_airline.rb +1 -1
- data/test/test_animal.rb +1 -1
- data/test/test_animal_cn.rb +1 -1
- data/test/test_animal_es.rb +1 -1
- data/test/test_animal_pl.rb +1 -1
- data/test/test_animal_us.rb +1 -1
- data/test/test_array_utils.rb +2 -1
- data/test/test_avatar.rb +1 -1
- data/test/test_aws.rb +2 -2
- data/test/test_bacon_ipsum.rb +1 -1
- data/test/test_bank.rb +3 -4
- data/test/test_book.rb +5 -5
- data/test/test_boolean.rb +1 -1
- data/test/test_cheesy_lingo.rb +1 -1
- data/test/test_code.rb +1 -1
- data/test/test_color.rb +1 -1
- data/test/test_color_pl.rb +1 -1
- data/test/test_color_ua.rb +1 -1
- data/test/test_company.rb +1 -1
- data/test/test_company_cn.rb +1 -1
- data/test/test_company_fr.rb +33 -0
- data/test/test_company_it.rb +1 -1
- data/test/test_company_ja.rb +1 -1
- data/test/test_company_se.rb +1 -1
- data/test/test_conference.rb +1 -1
- data/test/test_course_mathematiques.rb +1 -1
- data/test/test_course_philosophie.rb +1 -1
- data/test/test_currency.rb +1 -1
- data/test/test_dizzle_ipsum.rb +1 -1
- data/test/test_education.rb +1 -1
- data/test/test_education_cn.rb +1 -1
- data/test/{test_faker.rb → test_ffaker.rb} +6 -2
- data/test/test_filesystem.rb +12 -4
- data/test/test_food.rb +1 -1
- 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 +2 -2
- data/test/test_gender_br.rb +1 -1
- data/test/test_gender_cn.rb +1 -1
- data/test/test_gender_id.rb +1 -1
- data/test/test_gender_it.rb +27 -0
- data/test/test_gender_ja.rb +1 -1
- data/test/test_gender_jp.rb +1 -1
- data/test/test_gender_kr.rb +1 -1
- data/test/test_gender_pl.rb +1 -1
- data/test/test_gender_ru.rb +23 -0
- data/test/test_geolocation.rb +1 -1
- data/test/test_guid.rb +1 -1
- data/test/test_healthcare_ipsum.rb +1 -1
- data/test/test_healthcare_ru.rb +2 -2
- data/test/test_hipster_ipsum.rb +1 -1
- data/test/test_html_ipsum.rb +2 -2
- data/test/test_identification.rb +1 -1
- data/test/test_identification_br.rb +1 -1
- data/test/test_identification_co.rb +2 -2
- data/test/test_identification_es.rb +1 -1
- data/test/test_identification_es_cl.rb +2 -2
- data/test/test_identification_es_mx.rb +1 -1
- data/test/test_identification_in.rb +20 -0
- data/test/test_identification_it.rb +34 -0
- data/test/test_identification_kr.rb +1 -1
- data/test/test_identification_tw.rb +1 -1
- data/test/test_image.rb +5 -5
- data/test/test_internet.rb +1 -1
- data/test/test_internet_se.rb +2 -2
- data/test/test_job.rb +1 -1
- data/test/test_job_br.rb +1 -1
- data/test/test_job_cn.rb +1 -1
- data/test/test_job_fr.rb +1 -1
- data/test/test_job_it.rb +17 -0
- data/test/test_job_ja.rb +1 -1
- data/test/test_job_kr.rb +1 -1
- data/test/test_job_vn.rb +1 -1
- data/test/test_locale.rb +1 -1
- data/test/test_lorem.rb +5 -1
- data/test/test_lorem_ar.rb +1 -1
- data/test/test_lorem_br.rb +62 -0
- data/test/test_lorem_cn.rb +1 -1
- data/test/test_lorem_fr.rb +10 -8
- data/test/test_lorem_ie.rb +1 -1
- data/test/test_lorem_it.rb +51 -0
- data/test/test_lorem_ja.rb +1 -1
- data/test/test_lorem_kr.rb +1 -1
- data/test/test_lorem_pl.rb +2 -2
- data/test/test_lorem_ru.rb +2 -2
- data/test/test_lorem_ua.rb +2 -2
- data/test/test_module_utils.rb +1 -1
- data/test/test_movie.rb +1 -1
- data/test/test_music.rb +5 -5
- data/test/test_name.rb +1 -1
- data/test/test_name_ar.rb +1 -1
- data/test/test_name_br.rb +1 -1
- data/test/test_name_cn.rb +1 -1
- data/test/test_name_cs.rb +1 -1
- data/test/test_name_da.rb +1 -1
- data/test/test_name_de.rb +1 -1
- data/test/test_name_es.rb +1 -1
- data/test/test_name_fr.rb +1 -1
- data/test/test_name_ga.rb +1 -1
- data/test/test_name_gr.rb +1 -1
- data/test/test_name_id.rb +1 -1
- data/test/test_name_it.rb +1 -1
- data/test/test_name_ja.rb +1 -1
- data/test/test_name_kh.rb +1 -1
- data/test/test_name_kr.rb +1 -1
- data/test/test_name_mx.rb +1 -1
- data/test/test_name_nb.rb +1 -1
- data/test/test_name_nl.rb +1 -1
- data/test/test_name_ph.rb +1 -1
- data/test/test_name_pl.rb +1 -1
- data/test/test_name_ru.rb +1 -1
- data/test/test_name_se.rb +1 -1
- data/test/test_name_sn.rb +1 -1
- data/test/test_name_th.rb +1 -1
- data/test/test_name_th_en.rb +1 -1
- data/test/test_name_tw.rb +1 -1
- data/test/test_name_ua.rb +1 -1
- data/test/test_name_vn.rb +1 -1
- data/test/test_nato_alphabet.rb +1 -1
- data/test/test_phone_number.rb +1 -1
- data/test/test_phone_number_au.rb +1 -1
- data/test/test_phone_number_br.rb +1 -1
- data/test/test_phone_number_cu.rb +1 -1
- data/test/test_phone_number_da.rb +1 -1
- data/test/test_phone_number_de.rb +1 -1
- data/test/test_phone_number_fr.rb +1 -1
- data/test/test_phone_number_id.rb +1 -1
- data/test/test_phone_number_ja.rb +63 -0
- data/test/test_phone_number_kr.rb +1 -1
- data/test/test_phone_number_mx.rb +1 -1
- data/test/test_phone_number_nl.rb +1 -1
- data/test/test_phone_number_pl.rb +1 -1
- data/test/test_phone_number_se.rb +1 -1
- data/test/test_phone_number_sg.rb +1 -1
- data/test/test_phone_number_sn.rb +1 -1
- data/test/test_phone_number_tw.rb +1 -1
- data/test/test_phone_number_ua.rb +1 -1
- data/test/test_products.rb +1 -1
- data/test/test_sem_ver.rb +1 -1
- data/test/test_skill.rb +1 -1
- data/test/test_sport_pl.rb +1 -1
- data/test/test_sport_ru.rb +30 -0
- data/test/test_sport_us.rb +1 -1
- data/test/test_sports.rb +1 -1
- data/test/test_ssn.rb +1 -1
- data/test/test_ssn_mx.rb +1 -1
- data/test/test_ssn_se.rb +2 -2
- data/test/test_string.rb +4 -4
- data/test/test_time.rb +3 -4
- data/test/test_tweet.rb +5 -5
- data/test/test_unique_utils.rb +1 -1
- data/test/test_units.rb +2 -1
- data/test/test_units_english.rb +1 -1
- data/test/test_units_metric.rb +1 -1
- data/test/test_vehicle.rb +3 -3
- data/test/test_venue.rb +1 -1
- data/test/test_youtube.rb +1 -1
- metadata +232 -160
@@ -0,0 +1,20 @@
|
|
1
|
+
Биатлон
|
2
|
+
Бобслей
|
3
|
+
Горнолыжный спорт
|
4
|
+
Керлинг
|
5
|
+
Конькобежный спорт
|
6
|
+
Лыжное двоеборье
|
7
|
+
Лыжные гонки
|
8
|
+
Прыжки на лыжах с трамплина
|
9
|
+
Санный спорт
|
10
|
+
Скелетон
|
11
|
+
Сноуборд
|
12
|
+
Фигурное катание на коньках
|
13
|
+
Фристайл
|
14
|
+
Хоккей
|
15
|
+
Шорт-трек
|
16
|
+
Юкигассен
|
17
|
+
Ледолазание
|
18
|
+
Мотогонки на льду
|
19
|
+
Гонки на собачьих упряжках
|
20
|
+
Катание на ледяных глыбах
|
data/lib/ffaker/dizzle_ipsum.rb
CHANGED
data/lib/ffaker/education.rb
CHANGED
@@ -39,14 +39,10 @@ module FFaker
|
|
39
39
|
|
40
40
|
def school
|
41
41
|
case rand(0..4)
|
42
|
-
when 0, 1 then
|
43
|
-
|
44
|
-
when
|
45
|
-
|
46
|
-
when 3 then
|
47
|
-
"#{fetch_sample(SCHOOL_UNI)} of #{school_generic_name}"
|
48
|
-
when 4 then
|
49
|
-
"#{school_generic_name} #{fetch_sample(SCHOOL_TYPE)} of #{fetch_sample(MAJOR_NOUN)}"
|
42
|
+
when 0, 1 then "#{school_name} #{fetch_sample(SCHOOL_TYPE)}"
|
43
|
+
when 2 then "#{school_generic_name} #{fetch_sample(SCHOOL_ADJ)} #{fetch_sample(SCHOOL_TYPE)}"
|
44
|
+
when 3 then "#{fetch_sample(SCHOOL_UNI)} of #{school_generic_name}"
|
45
|
+
when 4 then "#{school_generic_name} #{fetch_sample(SCHOOL_TYPE)} of #{fetch_sample(MAJOR_NOUN)}"
|
50
46
|
end
|
51
47
|
end
|
52
48
|
end
|
data/lib/ffaker/education_cn.rb
CHANGED
@@ -28,12 +28,9 @@ module FFaker
|
|
28
28
|
|
29
29
|
def school
|
30
30
|
case rand(0..2)
|
31
|
-
when 0 then
|
32
|
-
|
33
|
-
when
|
34
|
-
"#{location}#{fetch_sample(SCHOOL_UNI)}"
|
35
|
-
when 2 then
|
36
|
-
"#{location}#{fetch_sample(SCHOOL_TYPE)}#{fetch_sample(SCHOOL_UNI)}#{fetch_sample(CITY)}分校"
|
31
|
+
when 0 then "#{location}#{fetch_sample(SCHOOL_TYPE)}#{fetch_sample(SCHOOL_UNI)}"
|
32
|
+
when 1 then "#{location}#{fetch_sample(SCHOOL_UNI)}"
|
33
|
+
when 2 then "#{location}#{fetch_sample(SCHOOL_TYPE)}#{fetch_sample(SCHOOL_UNI)}#{fetch_sample(CITY)}分校"
|
37
34
|
end
|
38
35
|
end
|
39
36
|
end
|
data/lib/ffaker/filesystem.rb
CHANGED
@@ -5,8 +5,6 @@ module FFaker
|
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
SLUG_DELIMITERS = %w[- _ .].freeze
|
9
|
-
|
10
8
|
def extension
|
11
9
|
fetch_sample(EXTENSION)
|
12
10
|
end
|
@@ -15,11 +13,13 @@ module FFaker
|
|
15
13
|
fetch_sample(MIME_TYPE)
|
16
14
|
end
|
17
15
|
|
18
|
-
def
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
16
|
+
def directory(directory_separator = File::SEPARATOR)
|
17
|
+
Lorem.words.join(directory_separator)
|
18
|
+
end
|
19
|
+
|
20
|
+
def file_name(dir = directory, name = Lorem.word.downcase,
|
21
|
+
ext = extension, directory_separator = File::SEPARATOR)
|
22
|
+
"#{dir}#{directory_separator}#{name}.#{ext}"
|
23
23
|
end
|
24
24
|
end
|
25
25
|
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module FoodPL
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def food
|
9
|
+
case rand(0..1)
|
10
|
+
when 0 then processed
|
11
|
+
when 1 then unprocessed
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def processed
|
16
|
+
case rand(0..2)
|
17
|
+
when 0 then fermented
|
18
|
+
when 1 then diary
|
19
|
+
when 2 then preserves
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def unprocessed
|
24
|
+
case rand(0..4)
|
25
|
+
when 0 then vegetable
|
26
|
+
when 1 then fruit
|
27
|
+
when 2 then herb
|
28
|
+
when 3 then spice
|
29
|
+
when 4 then meat
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def vegetable
|
34
|
+
fetch_sample(VEGETABLES)
|
35
|
+
end
|
36
|
+
|
37
|
+
def fruit
|
38
|
+
fetch_sample(FRUITS)
|
39
|
+
end
|
40
|
+
|
41
|
+
def herb
|
42
|
+
fetch_sample(HERBS)
|
43
|
+
end
|
44
|
+
|
45
|
+
def spice
|
46
|
+
fetch_sample(SPICES)
|
47
|
+
end
|
48
|
+
|
49
|
+
def meat
|
50
|
+
fetch_sample(MEATS)
|
51
|
+
end
|
52
|
+
|
53
|
+
def fermented
|
54
|
+
fetch_sample(FERMENTED)
|
55
|
+
end
|
56
|
+
|
57
|
+
def diary
|
58
|
+
fetch_sample(DIARY)
|
59
|
+
end
|
60
|
+
|
61
|
+
def preserves
|
62
|
+
fetch_sample(PRESERVES)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'lorem'
|
4
|
+
|
5
|
+
module FFaker
|
6
|
+
module FreedomIpsum
|
7
|
+
include Lorem
|
8
|
+
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
def word
|
13
|
+
fetch_sample(FREEDOM_WORDS)
|
14
|
+
end
|
15
|
+
|
16
|
+
def words(num = 3)
|
17
|
+
fetch_sample(FREEDOM_WORDS, count: num)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/ffaker/game.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module Game
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def title
|
9
|
+
case rand(0..1)
|
10
|
+
when 0 then simple_title
|
11
|
+
when 1 then title_with_prefix
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def category
|
16
|
+
fetch_sample(CATEGORY)
|
17
|
+
end
|
18
|
+
|
19
|
+
def mechanic
|
20
|
+
fetch_sample(MECHANIC)
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
def simple_title
|
26
|
+
"#{fetch_sample(ADJ_AND_ADV)} #{fetch_sample(NOUNS)}"
|
27
|
+
end
|
28
|
+
|
29
|
+
def title_with_prefix
|
30
|
+
"#{fetch_sample(PREFIXES)} #{simple_title}"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module GenderIT
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
GENDERS = %w[maschio femmina].freeze
|
9
|
+
|
10
|
+
def random
|
11
|
+
fetch_sample(GENDERS)
|
12
|
+
end
|
13
|
+
|
14
|
+
alias maybe random
|
15
|
+
alias sample random
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module GenderRU
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
GENDERS = %w[мужчина женщина нонбайнари агендер].freeze
|
9
|
+
BINARY_GENDERS = %w[мужчина женщина].freeze
|
10
|
+
|
11
|
+
def random
|
12
|
+
fetch_sample(GENDERS)
|
13
|
+
end
|
14
|
+
|
15
|
+
def binary
|
16
|
+
fetch_sample(BINARY_GENDERS)
|
17
|
+
end
|
18
|
+
|
19
|
+
alias maybe random
|
20
|
+
alias sample random
|
21
|
+
end
|
22
|
+
end
|
data/lib/ffaker/hipster_ipsum.rb
CHANGED
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module IdentificationIN
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
AADHAAR_FORMAT = ['############'].freeze
|
9
|
+
|
10
|
+
# REF: https://en.wikipedia.org/wiki/Aadhaar
|
11
|
+
def aadhaar
|
12
|
+
FFaker.numerify(AADHAAR_FORMAT)
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module IdentificationIT
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
ETHNICITIES = [
|
9
|
+
'Afroamericano', 'Asiatico/isolano del Pacifico', 'Caucasico', 'Ispanico', 'Nativo americano',
|
10
|
+
'Multirazziale', 'Altro', 'Preferisco non rispondere'
|
11
|
+
].freeze
|
12
|
+
GENDERS = %w[Maschio Femmina].freeze
|
13
|
+
|
14
|
+
def drivers_license
|
15
|
+
FFaker::String.from_regexp(/U1[1-9]\d{7}[A-Z]/)
|
16
|
+
end
|
17
|
+
|
18
|
+
def ssn
|
19
|
+
FFaker.numerify('####################')
|
20
|
+
end
|
21
|
+
|
22
|
+
def ethnicity
|
23
|
+
fetch_sample(ETHNICITIES)
|
24
|
+
end
|
25
|
+
|
26
|
+
def gender
|
27
|
+
fetch_sample(GENDERS)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -10,7 +10,7 @@ module FFaker
|
|
10
10
|
def rrn
|
11
11
|
birth = fetch_sample(Date.new(1970, 1, 1)..Date.new(1999, 12, 31)).strftime('%y%d%m')
|
12
12
|
sex = fetch_sample([1, 2])
|
13
|
-
loc = FFaker.numerify("#{fetch_sample(
|
13
|
+
loc = FFaker.numerify("#{fetch_sample(Array('00'..'95'))}###")
|
14
14
|
a, b, c, d, e, f, g, h, i, j, k, l = "#{birth}#{sex}#{loc}".split(//).map(&:to_i)
|
15
15
|
checksum = (11 - (2 * a + 3 * b + 4 * c + 5 * d + 6 * e + 7 * f + 8 * g + 9 * h + 2 * i + 3 * j + 4 * k + 5 * l) % 11) % 10
|
16
16
|
"#{birth}-#{sex}#{loc}#{checksum}"
|
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'ffaker/identification_es'
|
4
|
-
|
5
3
|
module FFaker
|
6
4
|
module IdentificationMX
|
7
5
|
extend ModuleUtils
|
@@ -9,7 +7,7 @@ module FFaker
|
|
9
7
|
|
10
8
|
CONSONANTS = %w[B C D F G H J K L M N P Q R S T V W X Y Z].freeze
|
11
9
|
VOWELS = %w[A E I O U].freeze
|
12
|
-
HOMOCLAVE = CONSONANTS + VOWELS +
|
10
|
+
HOMOCLAVE = CONSONANTS + VOWELS + Array('0'..'9')
|
13
11
|
|
14
12
|
# http://es.wikipedia.org/wiki/Registro_Federal_de_Contribuyentes_(M%C3%A9xico)
|
15
13
|
# Registro Federal de Contribuyentes (R.F.C.) para persona física
|
@@ -13,7 +13,7 @@ module FFaker
|
|
13
13
|
letter = FFaker.letterify('?')
|
14
14
|
code = AREA_CODE[letter.to_sym]
|
15
15
|
gender = fetch_sample([1, 2])
|
16
|
-
serial = FFaker.numerify(
|
16
|
+
serial = FFaker.numerify('#######')
|
17
17
|
a, b, c, d, e, f, g, h, i, j = "#{code}#{gender}#{serial}".split(//).map(&:to_i)
|
18
18
|
|
19
19
|
checksum = (9 * a + b + 2 * c + 3 * d + 4 * e + 5 * f + 6 * g + 7 * h + 8 * i + 9 * j) % 10
|
data/lib/ffaker/image.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'cgi'
|
3
4
|
require 'tempfile'
|
4
5
|
require 'open-uri'
|
5
6
|
|
@@ -18,11 +19,16 @@ module FFaker
|
|
18
19
|
text_color = FFaker::Color.hex_code if text_color == :random
|
19
20
|
text = CGI.escape(text.to_s)
|
20
21
|
|
21
|
-
"https://
|
22
|
+
"https://dummyimage.com/#{size}/#{bg_color}/#{text_color}.#{format}?text=#{text}"
|
22
23
|
end
|
23
24
|
|
24
25
|
def file(size = '300x300', format = 'png', bg_color = :random, text_color = :random, text = nil)
|
25
|
-
|
26
|
+
uri = URI.parse(url(size, format, bg_color, text_color, text))
|
27
|
+
file = Tempfile.new('ffaker_image')
|
28
|
+
file.binmode
|
29
|
+
file << uri.open.read
|
30
|
+
file.close
|
31
|
+
File.new(file.path)
|
26
32
|
end
|
27
33
|
|
28
34
|
private
|
@@ -38,14 +44,5 @@ module FFaker
|
|
38
44
|
|
39
45
|
raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}"
|
40
46
|
end
|
41
|
-
|
42
|
-
def download_file(url)
|
43
|
-
file = Tempfile.new('ffaker_image')
|
44
|
-
file.binmode
|
45
|
-
file << Kernel.open(url).read
|
46
|
-
file.close
|
47
|
-
|
48
|
-
File.new(file.path)
|
49
|
-
end
|
50
47
|
end
|
51
48
|
end
|
data/lib/ffaker/internet.rb
CHANGED
@@ -5,7 +5,7 @@ module FFaker
|
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
BYTE =
|
8
|
+
BYTE = Array('0'..'255').freeze
|
9
9
|
HOSTS = %w[gmail.com yahoo.com hotmail.com].freeze
|
10
10
|
DISPOSABLE_HOSTS = %w[
|
11
11
|
mailinator.com suremail.info spamherelots.com binkmail.com safetymail.info
|
data/lib/ffaker/internet_se.rb
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'ffaker/internet'
|
4
|
-
|
5
3
|
module FFaker
|
6
4
|
module InternetSE
|
7
5
|
include Internet
|
@@ -9,7 +7,7 @@ module FFaker
|
|
9
7
|
extend ModuleUtils
|
10
8
|
extend self
|
11
9
|
|
12
|
-
BYTE =
|
10
|
+
BYTE = Array('0'..'255').freeze
|
13
11
|
HOSTS = %w[gmail.com yahoo.com hotmail.com spray.se passagen.se].freeze
|
14
12
|
DOMAIN_SUFFIXES = %w[se nu com].freeze
|
15
13
|
DISPOSABLE_HOSTS = %w[
|