ffakerer 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/Changelog.md +154 -0
- data/Gemfile +2 -0
- data/LICENSE +22 -0
- data/README.md +88 -0
- data/Rakefile +138 -0
- data/ffakerer.gemspec +266 -0
- data/lib/ffakerer.rb +31 -0
- data/lib/ffakerer/address.rb +99 -0
- data/lib/ffakerer/address_au.rb +106 -0
- data/lib/ffakerer/address_ca.rb +28 -0
- data/lib/ffakerer/address_da.rb +56 -0
- data/lib/ffakerer/address_de.rb +42 -0
- data/lib/ffakerer/address_mx.rb +505 -0
- data/lib/ffakerer/address_se.rb +48 -0
- data/lib/ffakerer/address_sn.rb +25 -0
- data/lib/ffakerer/address_uk.rb +27 -0
- data/lib/ffakerer/address_us.rb +30 -0
- data/lib/ffakerer/bacon_ipsum.rb +21 -0
- data/lib/ffakerer/company.rb +45 -0
- data/lib/ffakerer/company_se.rb +24 -0
- data/lib/ffakerer/conference.rb +12 -0
- data/lib/ffakerer/data/address/city_suffixes +19 -0
- data/lib/ffakerer/data/address/country +242 -0
- data/lib/ffakerer/data/address/neighborhood +49 -0
- data/lib/ffakerer/data/address/street_suffix +195 -0
- data/lib/ffakerer/data/address_ca/province +13 -0
- data/lib/ffakerer/data/address_da/city +592 -0
- data/lib/ffakerer/data/address_da/kommune +92 -0
- data/lib/ffakerer/data/address_da/street +657 -0
- data/lib/ffakerer/data/address_de/city +1666 -0
- data/lib/ffakerer/data/address_de/state +15 -0
- data/lib/ffakerer/data/address_mx/state +32 -0
- data/lib/ffakerer/data/address_mx/state_abbr +32 -0
- data/lib/ffakerer/data/address_se/city +154 -0
- data/lib/ffakerer/data/address_se/countries +250 -0
- data/lib/ffakerer/data/address_se/street +2887 -0
- data/lib/ffakerer/data/address_sn/arrondissements +47 -0
- data/lib/ffakerer/data/address_sn/departements +43 -0
- data/lib/ffakerer/data/address_sn/regions +14 -0
- data/lib/ffakerer/data/address_uk/uk_county +70 -0
- data/lib/ffakerer/data/address_us/state +50 -0
- data/lib/ffakerer/data/address_us/state_abbr +51 -0
- data/lib/ffakerer/data/address_us/state_and_territories_abbr +62 -0
- data/lib/ffakerer/data/bacon_ipsum/bacon_words +60 -0
- data/lib/ffakerer/data/company/bs_mid +65 -0
- data/lib/ffakerer/data/company/bs_pos +44 -0
- data/lib/ffakerer/data/company/bs_pre +60 -0
- data/lib/ffakerer/data/company/catch_mid +101 -0
- data/lib/ffakerer/data/company/catch_pos +104 -0
- data/lib/ffakerer/data/company/catch_pre +100 -0
- data/lib/ffakerer/data/company/position_areas +11 -0
- data/lib/ffakerer/data/conference/conference_list +40 -0
- data/lib/ffakerer/data/dizzle_ipsum/dizzle_words +69 -0
- data/lib/ffakerer/data/education/major_noun +13 -0
- data/lib/ffakerer/data/education/school_suffix +13 -0
- data/lib/ffakerer/data/healthcare_ipsum/healthcare_words +193 -0
- data/lib/ffakerer/data/hipster_ipsum/hipster_words +101 -0
- data/lib/ffakerer/data/job/job_adj +37 -0
- data/lib/ffakerer/data/job/job_noun +25 -0
- data/lib/ffakerer/data/job/job_prefix +22 -0
- data/lib/ffakerer/data/job_fr/job_nouns +14 -0
- data/lib/ffakerer/data/job_fr/job_prefixes +15 -0
- data/lib/ffakerer/data/lorem/characters +36 -0
- data/lib/ffakerer/data/lorem/words +249 -0
- data/lib/ffakerer/data/lorem_ar/words +911 -0
- data/lib/ffakerer/data/lorem_cn/words +706 -0
- data/lib/ffakerer/data/lorem_fr/words +10379 -0
- data/lib/ffakerer/data/movie/adj_and_adv +20 -0
- data/lib/ffakerer/data/movie/nouns +36 -0
- data/lib/ffakerer/data/movie/prefixes +17 -0
- data/lib/ffakerer/data/name/first_names +3008 -0
- data/lib/ffakerer/data/name/last_names +475 -0
- data/lib/ffakerer/data/name_cn/first_names +1000 -0
- data/lib/ffakerer/data/name_cn/last_names +1057 -0
- data/lib/ffakerer/data/name_cs/prefixes +16 -0
- data/lib/ffakerer/data/name_da/female_first_names +492 -0
- data/lib/ffakerer/data/name_da/last_names +187 -0
- data/lib/ffakerer/data/name_da/male_first_names +390 -0
- data/lib/ffakerer/data/name_de/first_names +1166 -0
- data/lib/ffakerer/data/name_de/last_names +100 -0
- data/lib/ffakerer/data/name_fr/first_names +220 -0
- data/lib/ffakerer/data/name_fr/last_names +408 -0
- data/lib/ffakerer/data/name_ga/first_names_female +225 -0
- data/lib/ffakerer/data/name_ga/first_names_male +306 -0
- data/lib/ffakerer/data/name_ja/first_names +397 -0
- data/lib/ffakerer/data/name_ja/last_names +1078 -0
- data/lib/ffakerer/data/name_kr/first_names +1317 -0
- data/lib/ffakerer/data/name_kr/last_names +197 -0
- data/lib/ffakerer/data/name_mx/female_first_names +216 -0
- data/lib/ffakerer/data/name_mx/last_names +352 -0
- data/lib/ffakerer/data/name_mx/male_first_names +211 -0
- data/lib/ffakerer/data/name_ph/autochthonous_surnames +217 -0
- data/lib/ffakerer/data/name_ph/spanish_surnames +300 -0
- data/lib/ffakerer/data/name_se/first_names_female +110 -0
- data/lib/ffakerer/data/name_se/first_names_male +110 -0
- data/lib/ffakerer/data/name_se/last_names +100 -0
- data/lib/ffakerer/data/name_sn/first_names_female +225 -0
- data/lib/ffakerer/data/name_sn/first_names_male +304 -0
- data/lib/ffakerer/data/name_sn/last_names +243 -0
- data/lib/ffakerer/data/name_vn/first_names +6 -0
- data/lib/ffakerer/data/name_vn/last_names +67 -0
- data/lib/ffakerer/data/name_vn/middle_names +89 -0
- data/lib/ffakerer/data/phone_number_se/phone_prefix +265 -0
- data/lib/ffakerer/data/product/adj +19 -0
- data/lib/ffakerer/data/product/b1 +19 -0
- data/lib/ffakerer/data/product/noun +16 -0
- data/lib/ffakerer/data/skill/specialty_end +14 -0
- data/lib/ffakerer/data/skill/specialty_start +18 -0
- data/lib/ffakerer/data/skill/tech_skills +52 -0
- data/lib/ffakerer/data/venue/venue_list +33 -0
- data/lib/ffakerer/dizzle_ipsum.rb +21 -0
- data/lib/ffakerer/education.rb +48 -0
- data/lib/ffakerer/geolocation.rb +50 -0
- data/lib/ffakerer/healthcare_ipsum.rb +20 -0
- data/lib/ffakerer/hipster_ipsum.rb +21 -0
- data/lib/ffakerer/html_ipsum.rb +160 -0
- data/lib/ffakerer/identification.rb +27 -0
- data/lib/ffakerer/identification_es.rb +15 -0
- data/lib/ffakerer/identification_es_cl.rb +26 -0
- data/lib/ffakerer/identification_es_co.rb +40 -0
- data/lib/ffakerer/internet.rb +72 -0
- data/lib/ffakerer/internet_se.rb +106 -0
- data/lib/ffakerer/job.rb +12 -0
- data/lib/ffakerer/job_fr.rb +14 -0
- data/lib/ffakerer/lorem.rb +44 -0
- data/lib/ffakerer/lorem_ar.rb +40 -0
- data/lib/ffakerer/lorem_cn.rb +41 -0
- data/lib/ffakerer/lorem_fr.rb +39 -0
- data/lib/ffakerer/movie.rb +63 -0
- data/lib/ffakerer/name.rb +35 -0
- data/lib/ffakerer/name_cn.rb +24 -0
- data/lib/ffakerer/name_cs.rb +90 -0
- data/lib/ffakerer/name_da.rb +68 -0
- data/lib/ffakerer/name_de.rb +33 -0
- data/lib/ffakerer/name_fr.rb +37 -0
- data/lib/ffakerer/name_ga.rb +47 -0
- data/lib/ffakerer/name_ja.rb +24 -0
- data/lib/ffakerer/name_kr.rb +24 -0
- data/lib/ffakerer/name_mx.rb +103 -0
- data/lib/ffakerer/name_ph.rb +29 -0
- data/lib/ffakerer/name_ru.rb +92 -0
- data/lib/ffakerer/name_se.rb +47 -0
- data/lib/ffakerer/name_sn.rb +65 -0
- data/lib/ffakerer/name_vn.rb +28 -0
- data/lib/ffakerer/phone_number.rb +34 -0
- data/lib/ffakerer/phone_number_au.rb +77 -0
- data/lib/ffakerer/phone_number_da.rb +45 -0
- data/lib/ffakerer/phone_number_de.rb +51 -0
- data/lib/ffakerer/phone_number_mx.rb +58 -0
- data/lib/ffakerer/phone_number_se.rb +90 -0
- data/lib/ffakerer/phone_number_sg.rb +81 -0
- data/lib/ffakerer/phone_number_sn.rb +78 -0
- data/lib/ffakerer/product.rb +45 -0
- data/lib/ffakerer/skill.rb +24 -0
- data/lib/ffakerer/ssn.rb +17 -0
- data/lib/ffakerer/ssn_se.rb +109 -0
- data/lib/ffakerer/string.rb +92 -0
- data/lib/ffakerer/time.rb +30 -0
- data/lib/ffakerer/unit.rb +50 -0
- data/lib/ffakerer/unit_english.rb +114 -0
- data/lib/ffakerer/unit_metric.rb +105 -0
- data/lib/ffakerer/utils/array_utils.rb +44 -0
- data/lib/ffakerer/utils/module_utils.rb +29 -0
- data/lib/ffakerer/venue.rb +12 -0
- data/scripts/benchmark.rb +21 -0
- data/scripts/profile.sh +2 -0
- data/scripts/profiling.rb +7 -0
- data/test/helper.rb +2 -0
- data/test/test_address.rb +73 -0
- data/test/test_address_au.rb +58 -0
- data/test/test_address_ca.rb +17 -0
- data/test/test_address_de.rb +25 -0
- data/test/test_address_mx.rb +26 -0
- data/test/test_address_se.rb +36 -0
- data/test/test_address_sn.rb +25 -0
- data/test/test_address_uk.rb +17 -0
- data/test/test_address_us.rb +25 -0
- data/test/test_array_utils.rb +52 -0
- data/test/test_bacon_ipsum.rb +30 -0
- data/test/test_company.rb +23 -0
- data/test/test_company_se.rb +14 -0
- data/test/test_conference.rb +10 -0
- data/test/test_dizzle_ipsum.rb +30 -0
- data/test/test_education.rb +34 -0
- data/test/test_faker.rb +30 -0
- data/test/test_faker_internet.rb +60 -0
- data/test/test_faker_internet_se.rb +67 -0
- data/test/test_faker_job.rb +14 -0
- data/test/test_faker_job_fr.rb +22 -0
- data/test/test_faker_name.rb +21 -0
- data/test/test_faker_name_cn.rb +13 -0
- data/test/test_faker_name_cs.rb +65 -0
- data/test/test_faker_name_de.rb +21 -0
- data/test/test_faker_name_fr.rb +48 -0
- data/test/test_faker_name_ga.rb +56 -0
- data/test/test_faker_name_ja.rb +13 -0
- data/test/test_faker_name_kr.rb +13 -0
- data/test/test_faker_name_mx.rb +180 -0
- data/test/test_faker_name_ph.rb +17 -0
- data/test/test_faker_name_ru.rb +80 -0
- data/test/test_faker_name_se.rb +38 -0
- data/test/test_faker_name_sn.rb +98 -0
- data/test/test_geolocation.rb +34 -0
- data/test/test_healthcare_ipsum.rb +27 -0
- data/test/test_hipster_ipsum.rb +29 -0
- data/test/test_html_ipsum.rb +91 -0
- data/test/test_identification.rb +27 -0
- data/test/test_identification_co.rb +38 -0
- data/test/test_identification_es.rb +13 -0
- data/test/test_identification_es_cl.rb +13 -0
- data/test/test_lorem.rb +44 -0
- data/test/test_lorem_ar.rb +37 -0
- data/test/test_lorem_cn.rb +47 -0
- data/test/test_lorem_fr.rb +37 -0
- data/test/test_module_utils.rb +14 -0
- data/test/test_movie.rb +9 -0
- data/test/test_phone_number.rb +13 -0
- data/test/test_phone_number_au.rb +50 -0
- data/test/test_phone_number_de.rb +46 -0
- data/test/test_phone_number_mx.rb +43 -0
- data/test/test_phone_number_se.rb +60 -0
- data/test/test_phone_number_sg.rb +44 -0
- data/test/test_phone_number_sn.rb +34 -0
- data/test/test_skill.rb +24 -0
- data/test/test_ssn.rb +11 -0
- data/test/test_ssn_se.rb +43 -0
- data/test/test_string.rb +71 -0
- data/test/test_time.rb +19 -0
- data/test/test_units.rb +32 -0
- data/test/test_units_english.rb +62 -0
- data/test/test_units_metric.rb +61 -0
- data/test/test_venue.rb +9 -0
- metadata +372 -0
@@ -0,0 +1,39 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
module LoremFR
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def word
|
9
|
+
WORDS.rand
|
10
|
+
end
|
11
|
+
|
12
|
+
def words(num = 3)
|
13
|
+
WORDS.random_pick(num)
|
14
|
+
end
|
15
|
+
|
16
|
+
def sentence(word_count = 4)
|
17
|
+
s = words(word_count + rand(6))
|
18
|
+
s = s.join(' ')
|
19
|
+
s.capitalize!
|
20
|
+
"#{s}."
|
21
|
+
end
|
22
|
+
|
23
|
+
alias_method :phrase, :sentence
|
24
|
+
|
25
|
+
def sentences(sentence_count = 3)
|
26
|
+
(1..sentence_count).map { sentence }
|
27
|
+
end
|
28
|
+
|
29
|
+
alias_method :phrases, :sentences
|
30
|
+
|
31
|
+
def paragraph(sentence_count = 3)
|
32
|
+
sentences(sentence_count + rand(3)).join(' ')
|
33
|
+
end
|
34
|
+
|
35
|
+
def paragraphs(paragraph_count = 3)
|
36
|
+
(1..paragraph_count).map { paragraph }
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
module Movie
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def title
|
9
|
+
case rand(4)
|
10
|
+
when 0 then title_with_prefix
|
11
|
+
when 1 then title_with_suffix
|
12
|
+
when 2 then simple_title
|
13
|
+
when 3 then title_from_formula
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
SUFFIXES = k [
|
18
|
+
"from Hell", "from Outer Space", "from Mars", "from the Black Lagoon", "with a Thousand Faces",
|
19
|
+
"from Across the Ocean", "Who Fell to Earth", "That Came to Dinner"
|
20
|
+
]
|
21
|
+
|
22
|
+
COLORS = k %w{Red Yellow Black White}
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def title_with_prefix
|
27
|
+
"#{PREFIXES.rand} #{maybe_adj_or_adv}#{NOUNS.rand}"
|
28
|
+
end
|
29
|
+
|
30
|
+
def title_with_suffix
|
31
|
+
"The #{maybe_adj_or_adv}#{NOUNS.rand} #{SUFFIXES.rand}"
|
32
|
+
end
|
33
|
+
|
34
|
+
def maybe_adj_or_adv
|
35
|
+
if rand(2) == 1
|
36
|
+
ADJ_AND_ADV.rand + " "
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def simple_title
|
41
|
+
"#{ADJ_AND_ADV.rand} #{NOUNS.rand}"
|
42
|
+
end
|
43
|
+
|
44
|
+
def title_from_formula
|
45
|
+
case rand(13)
|
46
|
+
when 0 then "#{NOUNS.rand} 2: Electric Boogaloo"
|
47
|
+
when 1 then "The #{NOUNS.rand} Without a #{NOUNS.rand}"
|
48
|
+
when 2 then "The #{NOUNS.rand} from #{rand(20_000)} Leagues"
|
49
|
+
when 3 then "#{simple_title}: The #{Faker::Name.name} Story"
|
50
|
+
when 4 then "When #{Faker::Name.first_name} Met #{Faker::Name.first_name}"
|
51
|
+
when 5 then "Dr. #{NOUNS.rand}"
|
52
|
+
when 6 then "Je Vous Presente, #{Faker::Name.first_name}"
|
53
|
+
when 7 then "#{rand(3000)} A.D."
|
54
|
+
when 8 then "The #{NOUNS.rand} from #{Faker::Address.neighborhood}"
|
55
|
+
when 9 then "Christmas on #{Faker::Address.street_name}"
|
56
|
+
when 10 then "The #{COLORS.rand} Rose of #{Faker::AddressUK.country}"
|
57
|
+
when 11 then "Hard Boiled #{NOUNS.rand}"
|
58
|
+
else
|
59
|
+
::String.new.tap{|s| n = simple_title; s.replace("#{n} 2: Son of #{n}")}
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
module Name
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def name
|
9
|
+
case rand(10)
|
10
|
+
when 0 then "#{prefix} #{first_name} #{last_name}"
|
11
|
+
when 1 then "#{first_name} #{last_name} #{suffix}"
|
12
|
+
else "#{first_name} #{last_name}"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
def first_name
|
17
|
+
FIRST_NAMES.rand
|
18
|
+
end
|
19
|
+
|
20
|
+
def last_name
|
21
|
+
LAST_NAMES.rand
|
22
|
+
end
|
23
|
+
|
24
|
+
def prefix
|
25
|
+
PREFIXES.rand
|
26
|
+
end
|
27
|
+
|
28
|
+
def suffix
|
29
|
+
SUFFIXES.rand
|
30
|
+
end
|
31
|
+
|
32
|
+
PREFIXES = k %w(Mr. Mrs. Ms. Miss Dr.)
|
33
|
+
SUFFIXES = k %w(Jr. Sr. I II III IV V MD DDS PhD DVM)
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
module NameCN
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def name
|
9
|
+
"#{first_name}#{last_name}"
|
10
|
+
end
|
11
|
+
|
12
|
+
def first_name
|
13
|
+
FIRST_NAMES.rand
|
14
|
+
end
|
15
|
+
|
16
|
+
def last_name
|
17
|
+
LAST_NAMES.rand
|
18
|
+
end
|
19
|
+
|
20
|
+
def last_first
|
21
|
+
"#{last_name}#{first_name}"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'ffakerer/name'
|
4
|
+
|
5
|
+
module Faker
|
6
|
+
module NameCS
|
7
|
+
include Faker::Name
|
8
|
+
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
# All names generated inside the block will have the same sex.
|
13
|
+
# Can be called with explicit sex which will affect
|
14
|
+
# all calls inside thee block:
|
15
|
+
#
|
16
|
+
# Faker::NameCS.with_same_sex(:female)
|
17
|
+
# person.last_name = Faker::NameCS.last_name
|
18
|
+
# person.first_name = Faker::NameCS.first_name
|
19
|
+
# end
|
20
|
+
#
|
21
|
+
# person.last_name # => "Nováková"
|
22
|
+
# person.first_name # => "Jana"
|
23
|
+
def with_same_sex(sex = :random)
|
24
|
+
@fixed_sex = sex == :random ? GENDERS[rand(2)] : sex
|
25
|
+
yield
|
26
|
+
ensure
|
27
|
+
@fixed_sex = nil
|
28
|
+
end
|
29
|
+
|
30
|
+
# Generates random full name which can contain prefix and suffix
|
31
|
+
# Can be called with explicit sex (:male, :female), like:
|
32
|
+
#
|
33
|
+
# Faker::NameCS.name(:male)
|
34
|
+
#
|
35
|
+
# for_sex defaults to :random.
|
36
|
+
def name(for_sex = :random)
|
37
|
+
with_same_sex(for_sex) do
|
38
|
+
case rand(10)
|
39
|
+
when 0 then "#{prefix} #{first_name} #{last_name} #{suffix}"
|
40
|
+
when 1..2 then "#{prefix} #{first_name} #{last_name}"
|
41
|
+
else "#{first_name} #{last_name}"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
# Generates random last name
|
47
|
+
# for_sex can be :male, :female. Defaults to :random
|
48
|
+
def last_name(for_sex = :random)
|
49
|
+
LAST_NAMES[select_sex(for_sex)].rand
|
50
|
+
end
|
51
|
+
|
52
|
+
# Generates random first name
|
53
|
+
# for_sex can be :male, :female. Defaults to :random
|
54
|
+
def first_name(for_sex = :random)
|
55
|
+
FIRST_NAMES[select_sex(for_sex)].rand
|
56
|
+
end
|
57
|
+
|
58
|
+
# Generates random name prefix, an academic degree
|
59
|
+
def prefix
|
60
|
+
PREFIXES.rand
|
61
|
+
end
|
62
|
+
|
63
|
+
# Generates random name suffix, an academic degree
|
64
|
+
def suffix
|
65
|
+
SUFFIXES.rand
|
66
|
+
end
|
67
|
+
|
68
|
+
FIRST_NAMES = {
|
69
|
+
:female => k(%w(Alena Andrea Anna Barbora Božena Dagmar Dana Eliška Eva Hana Helena Irena Ivana Jana Jarmila Jaroslava Jiřina Jitka Kateřina Kristýna Lenka Libuše Lucie Ludmila Marcela Marie Markéta Marta Martina Michaela Miroslava Monika Pavla Petra Tereza Věra Veronika Vlasta Zdeňka Zuzana)),
|
70
|
+
:male => k(%w(Adam Aleš Alexandr Alois Antonín Bedřich Bohumil Bohuslav Břetislav Dalibor Daniel David Denis Dominik Dušan Eduard Emil Filip František Ivan Ivo Jakub Jan Jaromír Jaroslav Jindřich Jiří Josef Jozef Kamil Karel Kryštof Ladislav Leoš Libor Lubomír Luboš Luděk Ludvík Lukáš Marcel Marek Marian Martin Matěj Matyáš Michael Michal Milan Miloslav Miloš Miroslav Oldřich Ondřej Otakar Patrik Pavel Petr Přemysl Radek Radim Radomír Radovan René Richard Robert Roman Rostislav Rudolf Samuel Stanislav Šimon Štefan Štěpán Tadeáš Tomáš Václav Viktor Vilém Vít Vítězslav Vladimír Vladislav Vlastimil Vojtěch Vratislav Zbyněk Zdeněk))
|
71
|
+
}
|
72
|
+
|
73
|
+
LAST_NAMES= {
|
74
|
+
:female => k(%w(Dvořáková Černá Benešová Fialová Doležalová Čermáková Blažková Bartošová Čechová Dostálová Bláhová Burešová Dušková Beranová Bednářová Bártová Fišerová Bílková Beránková Brožová Čížková Adámková Daňková Filipová Červenková Čapková Bendová Adamcová Dvořáčková Brabcová Davidová Březinová Dlouhá Dohnalová Burianová Dufková Fojtíková Burdová Červená Boháčová Bartoňová Doleželová Dudová Adamová Bauerová Divišová Coufalová Čejková Berková Balážová)),
|
75
|
+
:male => k(%w(Dvořák Černý Beneš Fiala Doležal Čermák Blažek Bartoš Čech Dostál Bláha Bureš Dušek Beran Bednář Bárta Bílek Beránek Fišer Brož Čížek Filip Červenka Adámek Daněk Dvořáček Benda Adamec Brabec Březina David Burian Čapek Dohnal Dlouhý Fojtík Bartoň Červený Dufek Burda Duda Adam Boháč Doležel Baláž Diviš Coufal Bauer Dolejší))
|
76
|
+
}
|
77
|
+
|
78
|
+
SUFFIXES = k %w(Ph.D. Th.D. DSc.)
|
79
|
+
|
80
|
+
private
|
81
|
+
|
82
|
+
GENDERS = [:male, :female, :random] # :nodoc:
|
83
|
+
|
84
|
+
def select_sex(sex) # :nodoc:
|
85
|
+
given_sex = @fixed_sex ? @fixed_sex : sex
|
86
|
+
raise ArgumentError, "Unknown sex #{given_sex}" unless GENDERS.include?(given_sex)
|
87
|
+
given_sex == :random ? GENDERS[rand(2)] : given_sex
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'ffakerer/name'
|
4
|
+
|
5
|
+
module Faker
|
6
|
+
module NameDA
|
7
|
+
include Faker::Name
|
8
|
+
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
def name gender = :any
|
13
|
+
case gender
|
14
|
+
when :any then any_name
|
15
|
+
when :male then male_name
|
16
|
+
when :female then female_name
|
17
|
+
else
|
18
|
+
raise ArgumentError, "Invalid gender, must be one of :any, :male, :female"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def any_name
|
23
|
+
case rand(8)
|
24
|
+
when 0 then "#{prefix} #{first_name} #{last_name}"
|
25
|
+
when 1..2 then "#{first_name} #{last_name} #{last_name}"
|
26
|
+
else "#{first_name} #{last_name}"
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def male_name
|
31
|
+
fname = first_name :male
|
32
|
+
case rand(8)
|
33
|
+
when 0 then "#{prefix} #{fname} #{last_name}"
|
34
|
+
when 1..2 then "#{fname} #{last_name} #{last_name}"
|
35
|
+
else "#{fname} #{last_name}"
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
def female_name
|
40
|
+
fname = first_name :female
|
41
|
+
case rand(8)
|
42
|
+
when 0 then "#{prefix} #{fname} #{last_name}"
|
43
|
+
when 1..2 then "#{fname} #{last_name} #{last_name}"
|
44
|
+
else "#{fname} #{last_name}"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
def first_name gender = :any
|
49
|
+
case gender
|
50
|
+
when :any then (rand(2) == 0) ? name(:male) : name(:female)
|
51
|
+
when :male then MALE_FIRST_NAMES.rand
|
52
|
+
when :female then FEMALE_FIRST_NAMES.rand
|
53
|
+
else
|
54
|
+
raise ArgumentError, "Invalid gender, must be one of :any, :male, :female"
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
def last_name
|
59
|
+
LAST_NAMES.rand
|
60
|
+
end
|
61
|
+
|
62
|
+
def prefix
|
63
|
+
PREFIXES.rand
|
64
|
+
end
|
65
|
+
|
66
|
+
PREFIXES = k %w(Hr. Fr. Dr. Prof.)
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'ffakerer/name'
|
4
|
+
|
5
|
+
module Faker
|
6
|
+
module NameDE
|
7
|
+
include Faker::Name
|
8
|
+
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
def name
|
13
|
+
case rand(10)
|
14
|
+
when 0 then "#{prefix} #{first_name} #{last_name}"
|
15
|
+
else "#{first_name} #{last_name}"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def first_name
|
20
|
+
FIRST_NAMES.rand
|
21
|
+
end
|
22
|
+
|
23
|
+
def last_name
|
24
|
+
LAST_NAMES.rand
|
25
|
+
end
|
26
|
+
|
27
|
+
def prefix
|
28
|
+
PREFIXES.rand
|
29
|
+
end
|
30
|
+
|
31
|
+
PREFIXES = k %w(Herr Frau Dr. Prof.)
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
# Author PapePathe<pathe.sene@gmail.com> github.com/PapePathe
|
5
|
+
# The names & first names in this module were found at this url
|
6
|
+
# https://github.com/fzaninotto/Faker/blob/master/src/Faker/Provider/fr_FR/Person.php
|
7
|
+
module NameFR
|
8
|
+
extend ModuleUtils
|
9
|
+
extend self
|
10
|
+
|
11
|
+
PREFIX = k %w(de du le)
|
12
|
+
|
13
|
+
# randomized? (FRENCH) prefix!
|
14
|
+
#
|
15
|
+
def prefix
|
16
|
+
PREFIX.rand
|
17
|
+
end
|
18
|
+
|
19
|
+
def last_name
|
20
|
+
LAST_NAMES.rand
|
21
|
+
end
|
22
|
+
|
23
|
+
def first_name
|
24
|
+
FIRST_NAMES.rand
|
25
|
+
end
|
26
|
+
|
27
|
+
def name
|
28
|
+
case rand(10)
|
29
|
+
when 7 then "#{first_name} #{prefix} #{last_name}"
|
30
|
+
when 5 then "#{first_name} #{prefix} #{last_name}"
|
31
|
+
when 3 then "#{first_name} #{last_name}"
|
32
|
+
when 0 then "#{first_name} #{last_name}"
|
33
|
+
else "#{first_name} #{last_name}"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
|
5
|
+
# Generates names from Gambia West Africa
|
6
|
+
# Source: http://www.columbia.edu/~msj42/Common%20Gambian%20First%20Names.htm
|
7
|
+
module NameGA
|
8
|
+
extend ModuleUtils
|
9
|
+
extend self
|
10
|
+
|
11
|
+
LAST_NAMES = k %w(jammeh ceesay)
|
12
|
+
|
13
|
+
def first_name_female
|
14
|
+
FIRST_NAMES_FEMALE.rand
|
15
|
+
end
|
16
|
+
|
17
|
+
def first_name_male
|
18
|
+
FIRST_NAMES_MALE.rand
|
19
|
+
end
|
20
|
+
|
21
|
+
def last_name
|
22
|
+
LAST_NAMES.rand
|
23
|
+
end
|
24
|
+
|
25
|
+
def name_male
|
26
|
+
"#{first_name_male} #{last_name}"
|
27
|
+
end
|
28
|
+
|
29
|
+
def name_female
|
30
|
+
"#{first_name_female} #{last_name}"
|
31
|
+
end
|
32
|
+
|
33
|
+
def name
|
34
|
+
case rand(10)
|
35
|
+
when 9 then name_female
|
36
|
+
when 8 then name_male
|
37
|
+
when 7 then name_female
|
38
|
+
when 6 then name_male
|
39
|
+
when 5 then name_female
|
40
|
+
when 4 then name_male
|
41
|
+
when 3 then name_female
|
42
|
+
when 2 then name_male
|
43
|
+
else name_female
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|