faker 2.19.0 → 3.2.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 +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
|