faker 2.19.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +346 -7
- data/History.md +1 -1
- data/README.md +198 -104
- data/lib/faker/blockchain/aeternity.rb +1 -1
- data/lib/faker/blockchain/ethereum.rb +1 -1
- data/lib/faker/blockchain/tezos.rb +1 -1
- data/lib/faker/books/dune.rb +2 -10
- data/lib/faker/books/lovecraft.rb +7 -38
- data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
- data/lib/faker/default/address.rb +5 -25
- data/lib/faker/default/alphanumeric.rb +2 -8
- data/lib/faker/default/app.rb +1 -10
- data/lib/faker/default/avatar.rb +1 -12
- data/lib/faker/default/bank.rb +9 -17
- data/lib/faker/default/boolean.rb +1 -4
- data/lib/faker/default/chile_rut.rb +8 -14
- data/lib/faker/default/code.rb +11 -24
- data/lib/faker/default/color.rb +77 -6
- data/lib/faker/default/commerce.rb +3 -17
- data/lib/faker/default/company.rb +23 -20
- data/lib/faker/default/crypto_coin.rb +3 -15
- data/lib/faker/default/date.rb +5 -38
- data/lib/faker/default/demographic.rb +1 -5
- data/lib/faker/default/driving_licence.rb +1 -11
- data/lib/faker/default/drone.rb +1 -1
- data/lib/faker/default/file.rb +5 -24
- data/lib/faker/default/finance.rb +17 -7
- data/lib/faker/default/food.rb +14 -1
- data/lib/faker/default/hipster.rb +6 -45
- data/lib/faker/default/id_number.rb +108 -11
- data/lib/faker/default/internet.rb +168 -129
- data/lib/faker/default/invoice.rb +4 -17
- data/lib/faker/default/json.rb +2 -20
- data/lib/faker/default/lorem.rb +20 -76
- data/lib/faker/default/lorem_flickr.rb +4 -32
- data/lib/faker/default/markdown.rb +6 -11
- data/lib/faker/default/marketing.rb +1 -1
- data/lib/faker/default/measurement.rb +16 -48
- data/lib/faker/default/name.rb +1 -5
- data/lib/faker/default/nation.rb +0 -3
- data/lib/faker/default/nhs.rb +2 -6
- data/lib/faker/default/number.rb +10 -55
- data/lib/faker/default/omniauth.rb +51 -41
- data/lib/faker/default/phone_number.rb +2 -6
- data/lib/faker/default/placeholdit.rb +1 -12
- data/lib/faker/default/relationship.rb +1 -5
- data/lib/faker/default/religion.rb +6 -0
- data/lib/faker/default/source.rb +3 -16
- data/lib/faker/default/string.rb +1 -8
- data/lib/faker/default/stripe.rb +4 -20
- data/lib/faker/default/time.rb +4 -34
- data/lib/faker/default/twitter.rb +7 -23
- data/lib/faker/default/types.rb +5 -27
- data/lib/faker/default/vehicle.rb +29 -51
- data/lib/faker/default/vulnerability_identifier.rb +23 -0
- data/lib/faker/default/world_cup.rb +2 -11
- data/lib/faker/games/clash_of_clans.rb +1 -1
- data/lib/faker/games/dnd.rb +49 -7
- data/lib/faker/games/dota.rb +1 -5
- data/lib/faker/games/minecraft.rb +1 -1
- data/lib/faker/games/myst.rb +1 -1
- data/lib/faker/games/tarkov.rb +205 -0
- data/lib/faker/japanese_media/cowboy_bebop.rb +61 -0
- data/lib/faker/japanese_media/fullmetal_alchemist_brotherhood.rb +48 -0
- data/lib/faker/japanese_media/kamen_rider.rb +102 -0
- data/lib/faker/japanese_media/one_piece.rb +1 -1
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/movies/hackers.rb +48 -0
- data/lib/faker/movies/star_wars.rb +1 -5
- data/lib/faker/movies/tron.rb +161 -0
- data/lib/faker/quotes/quote.rb +13 -0
- data/lib/faker/religion/bible.rb +50 -0
- data/lib/faker/sports/chess.rb +90 -0
- data/lib/faker/sports/mountaineering.rb +22 -0
- data/lib/faker/sports/sport.rb +116 -0
- data/lib/faker/travel/airport.rb +43 -0
- data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
- data/lib/faker/tv_shows/michael_scott.rb +0 -3
- data/lib/faker/tv_shows/spongebob.rb +50 -0
- data/lib/faker/version.rb +1 -1
- data/lib/faker.rb +15 -64
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/unique_generator.rb +13 -11
- data/lib/locales/ar.yml +6 -1
- data/lib/locales/bg.yml +1 -1
- data/lib/locales/da-DK.yml +1 -1
- data/lib/locales/de-AT.yml +3 -4
- data/lib/locales/de-CH.yml +1 -1
- data/lib/locales/de.yml +1 -1
- data/lib/locales/en/address.yml +2 -3
- data/lib/locales/en/airport.yml +381 -0
- data/lib/locales/en/australia.yml +3 -4
- data/lib/locales/en/avatar.yml +31 -0
- data/lib/locales/en/bible.yml +90 -0
- data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
- data/lib/locales/en/cat.yml +1 -1
- data/lib/locales/en/chess.yml +103 -0
- data/lib/locales/en/coffee.yml +1 -1
- data/lib/locales/en/company.yml +1 -0
- data/lib/locales/en/computer.yml +23 -4
- data/lib/locales/en/cowboy_bebop.yml +163 -0
- data/lib/locales/en/dnd.yml +186 -1
- data/lib/locales/en/dota.yml +113 -0
- data/lib/locales/en/file.yml +9 -1
- data/lib/locales/en/finance.yml +3 -1
- data/lib/locales/en/fma_brotherhood.yml +78 -0
- data/lib/locales/en/food.yml +12 -0
- data/lib/locales/en/game.yml +11 -0
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/heroes.yml +2 -2
- data/lib/locales/en/internet.yml +140 -3
- data/lib/locales/en/kamen_rider.yml +452 -0
- data/lib/locales/en/mitch_hedberg.yml +46 -0
- data/lib/locales/en/mountain.yml +14 -1
- data/lib/locales/en/mountaineering.yml +14 -0
- data/lib/locales/en/movie.yml +2 -1
- data/lib/locales/en/naruto.yml +2 -3
- data/lib/locales/en/one_piece.yml +1 -1
- data/lib/locales/en/opera.yml +1 -1
- data/lib/locales/en/overwatch.yml +5 -7
- data/lib/locales/en/source.yml +5 -0
- data/lib/locales/en/spongebob.yml +489 -0
- data/lib/locales/en/sport.yml +130 -0
- data/lib/locales/en/star_wars.yml +1 -1
- data/lib/locales/en/stranger_thing.yml +1 -1
- data/lib/locales/en/super_smash_bros.yml +2 -0
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
- data/lib/locales/en/tron.yml +227 -0
- data/lib/locales/en/vehicle.yml +2809 -75
- data/lib/locales/en-AU.yml +2 -2
- data/lib/locales/en-CA.yml +2 -1
- data/lib/locales/en-GB.yml +2 -1
- data/lib/locales/en-MS.yml +1 -0
- data/lib/locales/en-NG.yml +1 -0
- data/lib/locales/en-NZ.yml +1 -0
- data/lib/locales/en-PAK.yml +1 -0
- data/lib/locales/en-SG.yml +1 -0
- data/lib/locales/en-UG.yml +1 -0
- data/lib/locales/en-US.yml +2 -2
- data/lib/locales/en-ZA.yml +1 -1
- data/lib/locales/en-au-ocker.yml +2 -0
- data/lib/locales/es-AR.yml +3 -2
- data/lib/locales/es-MX.yml +1 -1
- data/lib/locales/es.yml +2 -2
- data/lib/locales/fi-FI.yml +3 -1
- data/lib/locales/fr/address.yml +0 -1
- data/lib/locales/fr/adjective.yml +266 -0
- data/lib/locales/fr/ancient.yml +141 -0
- data/lib/locales/fr-CA.yml +1 -1
- data/lib/locales/fr-CH.yml +1 -1
- data/lib/locales/hy.yml +2 -1
- data/lib/locales/it.yml +1 -0
- data/lib/locales/ja/address.yml +258 -4169
- data/lib/locales/ja/adjective.yml +148 -0
- data/lib/locales/ja/dog.yml +1 -0
- data/lib/locales/ja/emotion.yml +51 -0
- data/lib/locales/ja/lorem.yml +2 -2
- data/lib/locales/ja/naruto.yml +230 -0
- data/lib/locales/ja/relationship.yml +10 -0
- data/lib/locales/ja/super_mario.yml +1 -1
- data/lib/locales/ja/super_smash_bros.yml +8 -0
- data/lib/locales/ko.yml +1 -0
- data/lib/locales/lt.yml +34 -0
- data/lib/locales/lv.yml +1 -1
- data/lib/locales/mi-NZ.yml +283 -0
- data/lib/locales/nb-NO.yml +1 -0
- data/lib/locales/nl.yml +1 -0
- data/lib/locales/pl.yml +2 -2
- data/lib/locales/pt-BR.yml +5 -0
- data/lib/locales/pt.yml +1 -1
- data/lib/locales/ru.yml +1 -0
- data/lib/locales/sk.yml +1 -0
- data/lib/locales/sv.yml +1 -0
- data/lib/locales/th.yml +76 -76
- data/lib/locales/tr.yml +1 -0
- data/lib/locales/uk.yml +1 -0
- data/lib/locales/vi.yml +1 -0
- data/lib/locales/zh-CN.yml +1 -0
- data/lib/locales/zh-TW.yml +1 -0
- metadata +96 -33
- data/lib/faker/default/fillmurray.rb +0 -45
- data/lib/faker/default/lorem_pixel.rb +0 -70
- /data/lib/faker/default/{faker_adjective.rb → adjective.rb} +0 -0
@@ -17,12 +17,7 @@ module Faker
|
|
17
17
|
# Faker::Finance.amount_between(0, 10) #=> 4.33
|
18
18
|
#
|
19
19
|
# @faker.version 1.9.0
|
20
|
-
def amount_between(
|
21
|
-
warn_for_deprecated_arguments do |keywords|
|
22
|
-
keywords << :from if legacy_from != NOT_GIVEN
|
23
|
-
keywords << :to if legacy_to != NOT_GIVEN
|
24
|
-
end
|
25
|
-
|
20
|
+
def amount_between(from: 0, to: 0)
|
26
21
|
Faker::Base.rand_in_range(from, to).round(2)
|
27
22
|
end
|
28
23
|
|
@@ -36,11 +31,7 @@ module Faker
|
|
36
31
|
# Faker::Invoice.creditor_reference #=> "RF34118592570724925498"
|
37
32
|
#
|
38
33
|
# @faker.version 1.9.0
|
39
|
-
def creditor_reference(
|
40
|
-
warn_for_deprecated_arguments do |keywords|
|
41
|
-
keywords << :ref if legacy_ref != NOT_GIVEN
|
42
|
-
end
|
43
|
-
|
34
|
+
def creditor_reference(ref: '')
|
44
35
|
ref = reference if ref.empty?
|
45
36
|
|
46
37
|
"RF#{iban_checksum('RF', ref)}#{ref}"
|
@@ -56,11 +47,7 @@ module Faker
|
|
56
47
|
# Faker::Invoice.reference #=> "45656646957845"
|
57
48
|
#
|
58
49
|
# @faker.version 1.9.0
|
59
|
-
def reference(
|
60
|
-
warn_for_deprecated_arguments do |keywords|
|
61
|
-
keywords << :ref if legacy_ref != NOT_GIVEN
|
62
|
-
end
|
63
|
-
|
50
|
+
def reference(ref: '')
|
64
51
|
pattern = fetch('invoice.reference.pattern')
|
65
52
|
|
66
53
|
ref = Base.regexify(/#{pattern}/) if ref.empty?
|
@@ -115,7 +102,7 @@ module Faker
|
|
115
102
|
mod10_remainder(weighted_sum)
|
116
103
|
end
|
117
104
|
|
118
|
-
# Calculates
|
105
|
+
# Calculates weighted sum
|
119
106
|
#
|
120
107
|
# For example with 12345678, [1,2]
|
121
108
|
# Ref.num. 1 2 3 4 5 6 7 8
|
data/lib/faker/default/json.rb
CHANGED
@@ -20,12 +20,7 @@ module Faker
|
|
20
20
|
# something to eat - it's all been wrong."}
|
21
21
|
#
|
22
22
|
# @faker.version 1.9.2
|
23
|
-
def shallow_json(
|
24
|
-
warn_for_deprecated_arguments do |keywords|
|
25
|
-
keywords << :width if legacy_width != NOT_GIVEN
|
26
|
-
keywords << :options if legacy_options != NOT_GIVEN
|
27
|
-
end
|
28
|
-
|
23
|
+
def shallow_json(width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
29
24
|
options[:key] = "Faker::#{options[:key]}"
|
30
25
|
options[:value] = "Faker::#{options[:value]}"
|
31
26
|
|
@@ -33,8 +28,6 @@ module Faker
|
|
33
28
|
JSON.generate(hash)
|
34
29
|
end
|
35
30
|
|
36
|
-
# rubocop:disable Metrics/ParameterLists
|
37
|
-
|
38
31
|
##
|
39
32
|
# Produces a random nested JSON formatted string that can take JSON as an additional argument.
|
40
33
|
#
|
@@ -73,17 +66,7 @@ module Faker
|
|
73
66
|
# {"Rick":"Wiza","Bonita":"Bayer","Gardner":"Auer","Felicity":"Abbott"}}}
|
74
67
|
#
|
75
68
|
# @faker.version 1.9.2
|
76
|
-
def add_depth_to_json(
|
77
|
-
warn_for_deprecated_arguments do |keywords|
|
78
|
-
keywords << :json if legacy_json != NOT_GIVEN
|
79
|
-
end
|
80
|
-
warn_for_deprecated_arguments do |keywords|
|
81
|
-
keywords << :width if legacy_width != NOT_GIVEN
|
82
|
-
end
|
83
|
-
warn_for_deprecated_arguments do |keywords|
|
84
|
-
keywords << :options if legacy_options != NOT_GIVEN
|
85
|
-
end
|
86
|
-
|
69
|
+
def add_depth_to_json(json: shallow_json, width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
87
70
|
options[:key] = "Faker::#{options[:key]}"
|
88
71
|
options[:value] = "Faker::#{options[:value]}"
|
89
72
|
|
@@ -93,7 +76,6 @@ module Faker
|
|
93
76
|
end
|
94
77
|
JSON.generate(hash)
|
95
78
|
end
|
96
|
-
# rubocop:enable Metrics/ParameterLists
|
97
79
|
|
98
80
|
private
|
99
81
|
|
data/lib/faker/default/lorem.rb
CHANGED
@@ -28,19 +28,19 @@ module Faker
|
|
28
28
|
# Faker::Lorem.words #=> ["hic", "quia", "nihil"]
|
29
29
|
# Faker::Lorem.words(number: 4) #=> ["est", "temporibus", "et", "quaerat"]
|
30
30
|
# Faker::Lorem.words(number: 4, supplemental: true) #=> ["nisi", "sit", "allatus", "consequatur"]
|
31
|
+
# Faker::Lorem.words(number: 4, supplemental: true, exclude_words: 'sit') #=> ["nisi", "allatus", "consequatur", "aut"]
|
31
32
|
#
|
32
33
|
# @faker.version 2.1.3
|
33
|
-
def words(
|
34
|
-
warn_for_deprecated_arguments do |keywords|
|
35
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
36
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
37
|
-
end
|
38
|
-
|
34
|
+
def words(number: 3, supplemental: false, exclude_words: nil)
|
39
35
|
resolved_num = resolve(number)
|
40
36
|
word_list = (
|
41
37
|
translate('faker.lorem.words') +
|
42
38
|
(supplemental ? translate('faker.lorem.supplemental') : [])
|
43
39
|
)
|
40
|
+
if exclude_words
|
41
|
+
exclude_words = exclude_words.split(', ') if exclude_words.instance_of?(::String)
|
42
|
+
word_list -= exclude_words
|
43
|
+
end
|
44
44
|
word_list *= ((resolved_num / word_list.length) + 1)
|
45
45
|
shuffle(word_list)[0, resolved_num]
|
46
46
|
end
|
@@ -74,16 +74,10 @@ module Faker
|
|
74
74
|
# Faker::Lorem.characters(number: 10, min_alpha: 4, min_numeric: 1) #=> "ang9cbhoa8"
|
75
75
|
#
|
76
76
|
# @faker.version 2.1.3
|
77
|
-
def characters(
|
78
|
-
warn_for_deprecated_arguments do |keywords|
|
79
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
80
|
-
end
|
81
|
-
|
77
|
+
def characters(number: 255, min_alpha: 0, min_numeric: 0)
|
82
78
|
Alphanumeric.alphanumeric(number: number, min_alpha: min_alpha, min_numeric: min_numeric)
|
83
79
|
end
|
84
80
|
|
85
|
-
# rubocop:disable Style/AsciiComments
|
86
|
-
|
87
81
|
##
|
88
82
|
# Generates the emoji
|
89
83
|
#
|
@@ -97,9 +91,6 @@ module Faker
|
|
97
91
|
def multibyte
|
98
92
|
sample(translate('faker.lorem.multibyte')).pack('C*').force_encoding('utf-8')
|
99
93
|
end
|
100
|
-
# rubocop:enable Style/AsciiComments
|
101
|
-
|
102
|
-
# rubocop:disable Metrics/ParameterLists
|
103
94
|
|
104
95
|
##
|
105
96
|
# Generates sentence
|
@@ -117,16 +108,9 @@ module Faker
|
|
117
108
|
# Faker::Lorem.sentence(word_count: 5, supplemental: true, random_words_to_add:2) #=> "Crinis quo cruentus velit animi vomer."
|
118
109
|
#
|
119
110
|
# @faker.version 2.1.3
|
120
|
-
def sentence(
|
121
|
-
|
122
|
-
keywords << :word_count if legacy_word_count != NOT_GIVEN
|
123
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
124
|
-
keywords << :random_words_to_add if legacy_random_words_to_add != NOT_GIVEN
|
125
|
-
end
|
126
|
-
|
127
|
-
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental).join(locale_space).capitalize + locale_period
|
111
|
+
def sentence(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
112
|
+
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space).capitalize + locale_period
|
128
113
|
end
|
129
|
-
# rubocop:enable Metrics/ParameterLists
|
130
114
|
|
131
115
|
##
|
132
116
|
# Generates three sentences
|
@@ -142,17 +126,10 @@ module Faker
|
|
142
126
|
# Faker::Lorem.sentences(number: 2, supplemental: true) #=> ["Cito cena ad.", "Solvo animus allatus."]
|
143
127
|
#
|
144
128
|
# @faker.version 2.1.3
|
145
|
-
def sentences(
|
146
|
-
|
147
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
148
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
149
|
-
end
|
150
|
-
|
151
|
-
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental) }
|
129
|
+
def sentences(number: 3, supplemental: false, exclude_words: nil)
|
130
|
+
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
152
131
|
end
|
153
132
|
|
154
|
-
# rubocop:disable Metrics/ParameterLists
|
155
|
-
|
156
133
|
##
|
157
134
|
# Generates three sentence paragraph
|
158
135
|
#
|
@@ -173,16 +150,9 @@ module Faker
|
|
173
150
|
# #=> "Texo tantillus tamisium. Tribuo amissio tamisium. Facere aut canis."
|
174
151
|
#
|
175
152
|
# @faker.version 2.1.3
|
176
|
-
def paragraph(
|
177
|
-
|
178
|
-
keywords << :sentence_count if legacy_sentence_count != NOT_GIVEN
|
179
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
180
|
-
keywords << :random_sentences_to_add if legacy_random_sentences_to_add != NOT_GIVEN
|
181
|
-
end
|
182
|
-
|
183
|
-
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental).join(locale_space)
|
153
|
+
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 0, exclude_words: nil)
|
154
|
+
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space)
|
184
155
|
end
|
185
|
-
# rubocop:enable Metrics/ParameterLists
|
186
156
|
|
187
157
|
##
|
188
158
|
# Generates three paragraphs
|
@@ -198,15 +168,8 @@ module Faker
|
|
198
168
|
# Faker::Lorem.paragraphs(number:2, supplemental: true)
|
199
169
|
#
|
200
170
|
# @faker.version 2.1.3
|
201
|
-
def paragraphs(
|
202
|
-
|
203
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
204
|
-
end
|
205
|
-
warn_for_deprecated_arguments do |keywords|
|
206
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
207
|
-
end
|
208
|
-
|
209
|
-
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental) }
|
171
|
+
def paragraphs(number: 3, supplemental: false, exclude_words: nil)
|
172
|
+
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
210
173
|
end
|
211
174
|
|
212
175
|
##
|
@@ -223,12 +186,7 @@ module Faker
|
|
223
186
|
# Faker::Lorem.paragraph_by_chars(number: 20, supplemental: true) #=> "Certus aveho admove."
|
224
187
|
#
|
225
188
|
# @faker.version 2.1.3
|
226
|
-
def paragraph_by_chars(
|
227
|
-
warn_for_deprecated_arguments do |keywords|
|
228
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
229
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
230
|
-
end
|
231
|
-
|
189
|
+
def paragraph_by_chars(number: 256, supplemental: false)
|
232
190
|
paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
|
233
191
|
|
234
192
|
paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < number
|
@@ -236,8 +194,6 @@ module Faker
|
|
236
194
|
"#{paragraph[0...number - 1]}."
|
237
195
|
end
|
238
196
|
|
239
|
-
# rubocop:disable Metrics/ParameterLists
|
240
|
-
|
241
197
|
##
|
242
198
|
# Returns the question with 4 words
|
243
199
|
#
|
@@ -254,16 +210,9 @@ module Faker
|
|
254
210
|
# Faker::Lorem.question(word_count: 2, supplemental: true, random_words_to_add: 2) #=> "Depulso uter ut?"
|
255
211
|
#
|
256
212
|
# @faker.version 2.1.3
|
257
|
-
def question(
|
258
|
-
|
259
|
-
keywords << :word_count if legacy_word_count != NOT_GIVEN
|
260
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
261
|
-
keywords << :random_words_to_add if legacy_random_words_to_add != NOT_GIVEN
|
262
|
-
end
|
263
|
-
|
264
|
-
words(number: word_count + rand(random_words_to_add), supplemental: supplemental).join(' ').capitalize + locale_question_mark
|
213
|
+
def question(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
214
|
+
words(number: word_count + rand(random_words_to_add), supplemental: supplemental, exclude_words: exclude_words).join(' ').capitalize + locale_question_mark
|
265
215
|
end
|
266
|
-
# rubocop:enable Metrics/ParameterLists
|
267
216
|
|
268
217
|
##
|
269
218
|
# Generates array of three questions
|
@@ -279,13 +228,8 @@ module Faker
|
|
279
228
|
# Faker::Lorem.questions(number: 2, supplemental: true) #=> ["Acceptus subito cetera?", "Aro sulum cubicularis?"]
|
280
229
|
#
|
281
230
|
# @faker.version 2.1.3
|
282
|
-
def questions(
|
283
|
-
|
284
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
285
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
286
|
-
end
|
287
|
-
|
288
|
-
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental) }
|
231
|
+
def questions(number: 3, supplemental: false, exclude_words: nil)
|
232
|
+
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
289
233
|
end
|
290
234
|
|
291
235
|
private
|
@@ -5,8 +5,6 @@ module Faker
|
|
5
5
|
class << self
|
6
6
|
SUPPORTED_COLORIZATIONS = %w[red green blue].freeze
|
7
7
|
|
8
|
-
# rubocop:disable Metrics/ParameterLists
|
9
|
-
|
10
8
|
##
|
11
9
|
# Produces a random image URL from loremflickr.com.
|
12
10
|
#
|
@@ -23,13 +21,7 @@ module Faker
|
|
23
21
|
# Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/50/60/sports,fitness/all"
|
24
22
|
#
|
25
23
|
# @faker.version 1.9.0
|
26
|
-
def image(
|
27
|
-
warn_for_deprecated_arguments do |keywords|
|
28
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
29
|
-
keywords << :search_terms if legacy_search_terms != NOT_GIVEN
|
30
|
-
keywords << :match_all if legacy_match_all != NOT_GIVEN
|
31
|
-
end
|
32
|
-
|
24
|
+
def image(size: '300x300', search_terms: [], match_all: false)
|
33
25
|
build_url(size, nil, search_terms, match_all)
|
34
26
|
end
|
35
27
|
|
@@ -49,13 +41,7 @@ module Faker
|
|
49
41
|
# Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/g/50/60/sports,fitness/all"
|
50
42
|
#
|
51
43
|
# @faker.version 1.9.0
|
52
|
-
def grayscale_image(
|
53
|
-
warn_for_deprecated_arguments do |keywords|
|
54
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
55
|
-
keywords << :search_terms if legacy_search_terms != NOT_GIVEN
|
56
|
-
keywords << :match_all if legacy_match_all != NOT_GIVEN
|
57
|
-
end
|
58
|
-
|
44
|
+
def grayscale_image(size: '300x300', search_terms: ['all'], match_all: false)
|
59
45
|
raise ArgumentError, 'Search terms must be specified for grayscale images' unless search_terms.any?
|
60
46
|
|
61
47
|
build_url(size, 'g', search_terms, match_all)
|
@@ -77,13 +63,7 @@ module Faker
|
|
77
63
|
# Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/p/50/60/sports,fitness/all"
|
78
64
|
#
|
79
65
|
# @faker.version 1.9.0
|
80
|
-
def pixelated_image(
|
81
|
-
warn_for_deprecated_arguments do |keywords|
|
82
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
83
|
-
keywords << :search_terms if legacy_search_terms != NOT_GIVEN
|
84
|
-
keywords << :match_all if legacy_match_all != NOT_GIVEN
|
85
|
-
end
|
86
|
-
|
66
|
+
def pixelated_image(size: '300x300', search_terms: ['all'], match_all: false)
|
87
67
|
raise ArgumentError, 'Search terms must be specified for pixelated images' unless search_terms.any?
|
88
68
|
|
89
69
|
build_url(size, 'p', search_terms, match_all)
|
@@ -106,20 +86,12 @@ module Faker
|
|
106
86
|
# Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/blue/50/60/sports,fitness/all"
|
107
87
|
#
|
108
88
|
# @faker.version 1.9.0
|
109
|
-
def colorized_image(
|
110
|
-
warn_for_deprecated_arguments do |keywords|
|
111
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
112
|
-
keywords << :color if legacy_color != NOT_GIVEN
|
113
|
-
keywords << :search_terms if legacy_search_terms != NOT_GIVEN
|
114
|
-
keywords << :match_all if legacy_match_all != NOT_GIVEN
|
115
|
-
end
|
116
|
-
|
89
|
+
def colorized_image(size: '300x300', color: 'red', search_terms: ['all'], match_all: false)
|
117
90
|
raise ArgumentError, 'Search terms must be specified for colorized images' unless search_terms.any?
|
118
91
|
raise ArgumentError, "Supported colorizations are #{SUPPORTED_COLORIZATIONS.join(', ')}" unless SUPPORTED_COLORIZATIONS.include?(color)
|
119
92
|
|
120
93
|
build_url(size, color, search_terms, match_all)
|
121
94
|
end
|
122
|
-
# rubocop:enable Metrics/ParameterLists
|
123
95
|
|
124
96
|
private
|
125
97
|
|
@@ -27,7 +27,7 @@ module Faker
|
|
27
27
|
# @faker.version 1.8.0
|
28
28
|
def emphasis
|
29
29
|
paragraph = Faker::Lorem.paragraph(sentence_count: 3)
|
30
|
-
words = paragraph.split
|
30
|
+
words = paragraph.split
|
31
31
|
position = rand(0..words.length - 1)
|
32
32
|
formatting = fetch('markdown.emphasis')
|
33
33
|
words[position] = "#{formatting}#{words[position]}#{formatting}"
|
@@ -50,7 +50,7 @@ module Faker
|
|
50
50
|
number.times do |i|
|
51
51
|
result << "#{i}. #{Faker::Lorem.sentence(word_count: 1)} \n"
|
52
52
|
end
|
53
|
-
result.join
|
53
|
+
result.join
|
54
54
|
end
|
55
55
|
|
56
56
|
##
|
@@ -69,7 +69,7 @@ module Faker
|
|
69
69
|
number.times do |_i|
|
70
70
|
result << "* #{Faker::Lorem.sentence(word_count: 1)} \n"
|
71
71
|
end
|
72
|
-
result.join
|
72
|
+
result.join
|
73
73
|
end
|
74
74
|
|
75
75
|
##
|
@@ -133,7 +133,7 @@ module Faker
|
|
133
133
|
def random(*args)
|
134
134
|
method_list = available_methods
|
135
135
|
args&.each { |ex| method_list.delete_if { |meth| meth == ex.to_sym } }
|
136
|
-
send(method_list[rand(0..method_list.length - 1)])
|
136
|
+
send(method_list[Faker::Config.random.rand(0..method_list.length - 1)])
|
137
137
|
end
|
138
138
|
|
139
139
|
##
|
@@ -150,12 +150,7 @@ module Faker
|
|
150
150
|
# Faker::Markdown.sandwich(sentences: 6, repeat: 3) #=> returns newline separated content of 1 header, and then 3 sections consisting of, here, 1 6-sentence lorem paragraph and 1 random markdown element. The random markdown element is chosen at random in each iteration of the paragraph-markdown pairing.
|
151
151
|
#
|
152
152
|
# @faker.version 1.8.0
|
153
|
-
def sandwich(
|
154
|
-
warn_for_deprecated_arguments do |keywords|
|
155
|
-
keywords << :sentences if legacy_sentences != NOT_GIVEN
|
156
|
-
keywords << :repeat if legacy_repeat != NOT_GIVEN
|
157
|
-
end
|
158
|
-
|
153
|
+
def sandwich(sentences: 3, repeat: 1)
|
159
154
|
text_block = []
|
160
155
|
text_block << headers
|
161
156
|
repeat.times do
|
@@ -168,7 +163,7 @@ module Faker
|
|
168
163
|
private
|
169
164
|
|
170
165
|
def available_methods
|
171
|
-
Markdown.public_methods(false) - Base.methods
|
166
|
+
(Markdown.public_methods(false) - Base.methods).sort
|
172
167
|
end
|
173
168
|
end
|
174
169
|
end
|
@@ -9,7 +9,7 @@ module Faker
|
|
9
9
|
##
|
10
10
|
# Produces a random height measurement.
|
11
11
|
#
|
12
|
-
# @param amount [Integer]
|
12
|
+
# @param amount [Integer] Specifies the random height value.
|
13
13
|
# @return [String]
|
14
14
|
#
|
15
15
|
# @example
|
@@ -19,18 +19,14 @@ module Faker
|
|
19
19
|
# Faker::Measurement.height(amount: "all") #=> "inches"
|
20
20
|
#
|
21
21
|
# @faker.version 1.7.3
|
22
|
-
def height(
|
23
|
-
warn_for_deprecated_arguments do |keywords|
|
24
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
25
|
-
end
|
26
|
-
|
22
|
+
def height(amount: rand(10))
|
27
23
|
define_measurement_locale(amount, 'height')
|
28
24
|
end
|
29
25
|
|
30
26
|
##
|
31
27
|
# Produces a random length measurement.
|
32
28
|
#
|
33
|
-
# @param amount [Integer]
|
29
|
+
# @param amount [Integer] Specifies the random length value.
|
34
30
|
# @return [String]
|
35
31
|
#
|
36
32
|
# @example
|
@@ -38,18 +34,14 @@ module Faker
|
|
38
34
|
# Faker::Measurement.length(amount: 1.4) #=> "1.4 yards"
|
39
35
|
#
|
40
36
|
# @faker.version 1.7.3
|
41
|
-
def length(
|
42
|
-
warn_for_deprecated_arguments do |keywords|
|
43
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
44
|
-
end
|
45
|
-
|
37
|
+
def length(amount: rand(10))
|
46
38
|
define_measurement_locale(amount, 'length')
|
47
39
|
end
|
48
40
|
|
49
41
|
##
|
50
42
|
# Produces a random volume measurement.
|
51
43
|
#
|
52
|
-
# @param amount [Integer]
|
44
|
+
# @param amount [Integer] Specifies the random volume value.
|
53
45
|
# @return [String]
|
54
46
|
#
|
55
47
|
# @example
|
@@ -57,18 +49,14 @@ module Faker
|
|
57
49
|
# Faker::Measurement.volume(amount: 1.4) #=> "1.4 cups"
|
58
50
|
#
|
59
51
|
# @faker.version 1.7.3
|
60
|
-
def volume(
|
61
|
-
warn_for_deprecated_arguments do |keywords|
|
62
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
63
|
-
end
|
64
|
-
|
52
|
+
def volume(amount: rand(10))
|
65
53
|
define_measurement_locale(amount, 'volume')
|
66
54
|
end
|
67
55
|
|
68
56
|
##
|
69
57
|
# Produces a random weight measurement.
|
70
58
|
#
|
71
|
-
# @param amount [Integer]
|
59
|
+
# @param amount [Integer] Specifies the random weight value.
|
72
60
|
# @return [String]
|
73
61
|
#
|
74
62
|
# @example
|
@@ -76,18 +64,14 @@ module Faker
|
|
76
64
|
# Faker::Measurement.weight(amount: 1.4) #=> "1.4 pounds"
|
77
65
|
#
|
78
66
|
# @faker.version 1.7.3
|
79
|
-
def weight(
|
80
|
-
warn_for_deprecated_arguments do |keywords|
|
81
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
82
|
-
end
|
83
|
-
|
67
|
+
def weight(amount: rand(10))
|
84
68
|
define_measurement_locale(amount, 'weight')
|
85
69
|
end
|
86
70
|
|
87
71
|
##
|
88
72
|
# Produces a random metric height measurement.
|
89
73
|
#
|
90
|
-
# @param amount [Integer]
|
74
|
+
# @param amount [Integer] Specifies the random height value.
|
91
75
|
# @return [String]
|
92
76
|
#
|
93
77
|
# @example
|
@@ -95,18 +79,14 @@ module Faker
|
|
95
79
|
# Faker::Measurement.metric_height(amount: 1.4) #=> "1.4 meters"
|
96
80
|
#
|
97
81
|
# @faker.version 1.7.3
|
98
|
-
def metric_height(
|
99
|
-
warn_for_deprecated_arguments do |keywords|
|
100
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
101
|
-
end
|
102
|
-
|
82
|
+
def metric_height(amount: rand(10))
|
103
83
|
define_measurement_locale(amount, 'metric_height')
|
104
84
|
end
|
105
85
|
|
106
86
|
##
|
107
87
|
# Produces a random metric length measurement.
|
108
88
|
#
|
109
|
-
# @param amount [Integer]
|
89
|
+
# @param amount [Integer] Specifies the random length value.
|
110
90
|
# @return [String]
|
111
91
|
#
|
112
92
|
# @example
|
@@ -114,18 +94,14 @@ module Faker
|
|
114
94
|
# Faker::Measurement.metric_length(amount: 1.4) #=> "1.4 decimeters"
|
115
95
|
#
|
116
96
|
# @faker.version 1.7.3
|
117
|
-
def metric_length(
|
118
|
-
warn_for_deprecated_arguments do |keywords|
|
119
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
120
|
-
end
|
121
|
-
|
97
|
+
def metric_length(amount: rand(10))
|
122
98
|
define_measurement_locale(amount, 'metric_length')
|
123
99
|
end
|
124
100
|
|
125
101
|
##
|
126
102
|
# Produces a random metric volume measurement.
|
127
103
|
#
|
128
|
-
# @param amount [Integer]
|
104
|
+
# @param amount [Integer] Specifies the random volume value.
|
129
105
|
# @return [String]
|
130
106
|
#
|
131
107
|
# @example
|
@@ -133,18 +109,14 @@ module Faker
|
|
133
109
|
# Faker::Measurement.metric_volume(amount: 1.4) #=> "1.4 liters"
|
134
110
|
#
|
135
111
|
# @faker.version 1.7.3
|
136
|
-
def metric_volume(
|
137
|
-
warn_for_deprecated_arguments do |keywords|
|
138
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
139
|
-
end
|
140
|
-
|
112
|
+
def metric_volume(amount: rand(10))
|
141
113
|
define_measurement_locale(amount, 'metric_volume')
|
142
114
|
end
|
143
115
|
|
144
116
|
##
|
145
117
|
# Produces a random metric weight measurement.
|
146
118
|
#
|
147
|
-
# @param amount [Integer]
|
119
|
+
# @param amount [Integer] Specifies the random weight value.
|
148
120
|
# @return [String]
|
149
121
|
#
|
150
122
|
# @example
|
@@ -152,11 +124,7 @@ module Faker
|
|
152
124
|
# Faker::Measurement.metric_weight(amount: 1.4) #=> "1.4 grams"
|
153
125
|
#
|
154
126
|
# @faker.version 1.7.3
|
155
|
-
def metric_weight(
|
156
|
-
warn_for_deprecated_arguments do |keywords|
|
157
|
-
keywords << :amount if legacy_amount != NOT_GIVEN
|
158
|
-
end
|
159
|
-
|
127
|
+
def metric_weight(amount: rand(10))
|
160
128
|
define_measurement_locale(amount, 'metric_weight')
|
161
129
|
end
|
162
130
|
|
data/lib/faker/default/name.rb
CHANGED
@@ -144,11 +144,7 @@ module Faker
|
|
144
144
|
# Faker::Name.initials(number: 2) #=> "NM"
|
145
145
|
#
|
146
146
|
# @faker.version 1.8.5
|
147
|
-
def initials(
|
148
|
-
warn_for_deprecated_arguments do |keywords|
|
149
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
150
|
-
end
|
151
|
-
|
147
|
+
def initials(number: 3)
|
152
148
|
(0...number).map { rand(65..90).chr }.join
|
153
149
|
end
|
154
150
|
end
|
data/lib/faker/default/nation.rb
CHANGED
@@ -17,8 +17,6 @@ module Faker
|
|
17
17
|
fetch('nation.nationality')
|
18
18
|
end
|
19
19
|
|
20
|
-
# rubocop:disable Style/AsciiComments
|
21
|
-
|
22
20
|
##
|
23
21
|
# Produces a random national flag emoji.
|
24
22
|
#
|
@@ -31,7 +29,6 @@ module Faker
|
|
31
29
|
def flag
|
32
30
|
sample(translate('faker.nation.flag')).pack('C*').force_encoding('utf-8')
|
33
31
|
end
|
34
|
-
# rubocop:enable Style/AsciiComments
|
35
32
|
|
36
33
|
##
|
37
34
|
# Produces a random national language.
|
data/lib/faker/default/nhs.rb
CHANGED
@@ -21,7 +21,7 @@ module Faker
|
|
21
21
|
.chars
|
22
22
|
.insert(3, ' ')
|
23
23
|
.insert(7, ' ')
|
24
|
-
.join
|
24
|
+
.join
|
25
25
|
end
|
26
26
|
|
27
27
|
##
|
@@ -34,11 +34,7 @@ module Faker
|
|
34
34
|
# Faker::NationalHealthService.check_digit(number: 400_012_114) #=> 6
|
35
35
|
#
|
36
36
|
# @faker.version 1.9.2
|
37
|
-
def check_digit(
|
38
|
-
warn_for_deprecated_arguments do |keywords|
|
39
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
40
|
-
end
|
41
|
-
|
37
|
+
def check_digit(number: 0)
|
42
38
|
sum = 0
|
43
39
|
number.to_s.chars.each_with_index do |digit, idx|
|
44
40
|
position = idx + 1
|