faker 2.23.0 → 3.0.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 +83 -29
- data/History.md +1 -1
- data/README.md +10 -5
- data/lib/faker/books/dune.rb +2 -10
- data/lib/faker/books/lovecraft.rb +7 -38
- 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 +5 -13
- data/lib/faker/default/boolean.rb +1 -4
- data/lib/faker/default/chile_rut.rb +2 -12
- data/lib/faker/default/code.rb +3 -16
- data/lib/faker/default/color.rb +77 -6
- data/lib/faker/default/commerce.rb +3 -17
- data/lib/faker/default/company.rb +2 -10
- 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/file.rb +2 -21
- data/lib/faker/default/fillmurray.rb +1 -10
- data/lib/faker/default/finance.rb +1 -5
- data/lib/faker/default/hipster.rb +6 -45
- data/lib/faker/default/id_number.rb +2 -10
- data/lib/faker/default/internet.rb +11 -69
- data/lib/faker/default/invoice.rb +3 -16
- data/lib/faker/default/json.rb +2 -20
- data/lib/faker/default/lorem.rb +9 -66
- data/lib/faker/default/lorem_flickr.rb +4 -32
- data/lib/faker/default/lorem_pixel.rb +4 -10
- data/lib/faker/default/markdown.rb +1 -6
- data/lib/faker/default/measurement.rb +8 -40
- data/lib/faker/default/name.rb +1 -5
- data/lib/faker/default/nhs.rb +1 -5
- data/lib/faker/default/number.rb +10 -55
- data/lib/faker/default/omniauth.rb +5 -39
- data/lib/faker/default/phone_number.rb +1 -5
- data/lib/faker/default/placeholdit.rb +1 -12
- data/lib/faker/default/relationship.rb +1 -5
- data/lib/faker/default/source.rb +3 -16
- data/lib/faker/default/string.rb +1 -5
- data/lib/faker/default/stripe.rb +4 -20
- data/lib/faker/default/time.rb +4 -32
- data/lib/faker/default/twitter.rb +3 -17
- data/lib/faker/default/types.rb +5 -27
- data/lib/faker/default/vehicle.rb +4 -17
- data/lib/faker/default/world_cup.rb +2 -11
- data/lib/faker/games/dota.rb +1 -5
- data/lib/faker/games/tarkov.rb +205 -0
- data/lib/faker/movies/hackers.rb +48 -0
- data/lib/faker/movies/star_wars.rb +1 -5
- data/lib/faker/version.rb +1 -1
- data/lib/faker.rb +0 -53
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/heroes.yml +2 -2
- 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/sport.yml +17 -8
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en-CA.yml +1 -0
- data/lib/locales/es-AR.yml +2 -2
- data/lib/locales/fi-FI.yml +2 -1
- data/lib/locales/fr/ancient.yml +141 -0
- data/lib/locales/hy.yml +1 -1
- data/lib/locales/th.yml +76 -76
- metadata +44 -16
@@ -29,12 +29,7 @@ module Faker
|
|
29
29
|
# Faker::Internet.email(name: 'smith') #=> "smith@faker.com"
|
30
30
|
# Faker::Internet.email(name: 'sam smith', separators: ['-']) #=> "sam-smith@faker.com"
|
31
31
|
# Faker::Internet.email(name: 'sam smith', separators: ['-'], domain: 'gmail') #=> "sam-smith@gmail.com"
|
32
|
-
def email(
|
33
|
-
warn_for_deprecated_arguments do |keywords|
|
34
|
-
keywords << :name if legacy_name != NOT_GIVEN
|
35
|
-
keywords << :separators if legacy_separators != NOT_GIVEN
|
36
|
-
end
|
37
|
-
|
32
|
+
def email(name: nil, separators: nil, domain: nil)
|
38
33
|
local_part = if separators
|
39
34
|
username(specifier: name, separators: separators)
|
40
35
|
else
|
@@ -55,11 +50,7 @@ module Faker
|
|
55
50
|
# @example
|
56
51
|
# Faker::Internet.free_email #=> "samsmith@gmail.com"
|
57
52
|
# Faker::Internet.free_email(name: 'smith') #=> "smith@yahoo.com"
|
58
|
-
def free_email(
|
59
|
-
warn_for_deprecated_arguments do |keywords|
|
60
|
-
keywords << :name if legacy_name != NOT_GIVEN
|
61
|
-
end
|
62
|
-
|
53
|
+
def free_email(name: nil)
|
63
54
|
construct_email(
|
64
55
|
sanitize_email_local_part(username(specifier: name)),
|
65
56
|
fetch('internet.free_email')
|
@@ -76,11 +67,7 @@ module Faker
|
|
76
67
|
# @example
|
77
68
|
# Faker::Internet.safe_email #=> "samsmith@example.com"
|
78
69
|
# Faker::Internet.safe_email(name: 'smith') #=> "smith@example.net"
|
79
|
-
def safe_email(
|
80
|
-
warn_for_deprecated_arguments do |keywords|
|
81
|
-
keywords << :name if legacy_name != NOT_GIVEN
|
82
|
-
end
|
83
|
-
|
70
|
+
def safe_email(name: nil)
|
84
71
|
construct_email(
|
85
72
|
sanitize_email_local_part(username(specifier: name)),
|
86
73
|
"example.#{sample(%w[org com net])}"
|
@@ -100,12 +87,7 @@ module Faker
|
|
100
87
|
# Faker::Internet.username(specifier: 5..10) #=> "morris"
|
101
88
|
# Faker::Internet.username(specifier: 5..10) #=> "berryberry"
|
102
89
|
# Faker::Internet.username(specifier: 20, separators: ['-']) #=> "nikki_sawaynnikki_saway"
|
103
|
-
def username(
|
104
|
-
warn_for_deprecated_arguments do |keywords|
|
105
|
-
keywords << :specifier if legacy_specifier != NOT_GIVEN
|
106
|
-
keywords << :separators if legacy_separators != NOT_GIVEN
|
107
|
-
end
|
108
|
-
|
90
|
+
def username(specifier: nil, separators: %w[. _])
|
109
91
|
with_locale(:en) do
|
110
92
|
return shuffle(specifier.scan(/[[:word:]]+/)).join(sample(separators)).downcase if specifier.respond_to?(:scan)
|
111
93
|
|
@@ -142,8 +124,6 @@ module Faker
|
|
142
124
|
end
|
143
125
|
end
|
144
126
|
|
145
|
-
# rubocop:disable Metrics/ParameterLists
|
146
|
-
|
147
127
|
##
|
148
128
|
# Produces a randomized string of characters suitable for passwords
|
149
129
|
#
|
@@ -166,14 +146,7 @@ module Faker
|
|
166
146
|
# Faker::Internet.password(min_length: 10, max_length: 20, mix_case: true, special_characters: true) #=> "*%NkOnJsH4"
|
167
147
|
#
|
168
148
|
# @faker.version 2.1.3
|
169
|
-
def password(
|
170
|
-
warn_for_deprecated_arguments do |keywords|
|
171
|
-
keywords << :min_length if legacy_min_length != NOT_GIVEN
|
172
|
-
keywords << :max_length if legacy_max_length != NOT_GIVEN
|
173
|
-
keywords << :mix_case if legacy_mix_case != NOT_GIVEN
|
174
|
-
keywords << :special_characters if legacy_special_characters != NOT_GIVEN
|
175
|
-
end
|
176
|
-
|
149
|
+
def password(min_length: 8, max_length: 16, mix_case: true, special_characters: false)
|
177
150
|
raise ArgumentError, 'Password of length 1 can not have both mixed case and special characters' if min_length <= 1 && mix_case && special_characters
|
178
151
|
|
179
152
|
min_alpha = mix_case && min_length > 1 ? 2 : 0
|
@@ -206,7 +179,6 @@ module Faker
|
|
206
179
|
|
207
180
|
temp
|
208
181
|
end
|
209
|
-
# rubocop:enable Metrics/ParameterLists
|
210
182
|
|
211
183
|
##
|
212
184
|
# Returns the domain name
|
@@ -221,11 +193,7 @@ module Faker
|
|
221
193
|
# Faker::Internet.domain_name(subdomain: true) #=> "test.faker.io"
|
222
194
|
# Faker::Internet.domain_name(subdomain: true, domain: 'example') #=> "faker.example.com"
|
223
195
|
# Faker::Internet.domain_name(domain: 'faker') #=> "faker.org"
|
224
|
-
def domain_name(
|
225
|
-
warn_for_deprecated_arguments do |keywords|
|
226
|
-
keywords << :subdomain if legacy_subdomain != NOT_GIVEN
|
227
|
-
end
|
228
|
-
|
196
|
+
def domain_name(subdomain: false, domain: nil)
|
229
197
|
with_locale(:en) do
|
230
198
|
if domain
|
231
199
|
domain
|
@@ -254,11 +222,7 @@ module Faker
|
|
254
222
|
# Faker::Internet.fix_umlauts #=> ""
|
255
223
|
# Faker::Internet.fix_umlauts(string: 'faker') #=> "faker"
|
256
224
|
# Faker::Internet.fix_umlauts(string: 'faküer') #=> "fakueer"
|
257
|
-
def fix_umlauts(
|
258
|
-
warn_for_deprecated_arguments do |keywords|
|
259
|
-
keywords << :string if legacy_string != NOT_GIVEN
|
260
|
-
end
|
261
|
-
|
225
|
+
def fix_umlauts(string: '')
|
262
226
|
Char.fix_umlauts(string)
|
263
227
|
end
|
264
228
|
|
@@ -294,11 +258,7 @@ module Faker
|
|
294
258
|
# Faker::Internet.mac_address(prefix: 'a') #=> "0a:91:ce:24:89:3b"
|
295
259
|
# Faker::Internet.mac_address(prefix: 'aa') #=> "aa:38:a0:3e:e8:41"
|
296
260
|
# Faker::Internet.mac_address(prefix: 'aa:44') #=> "aa:44:30:88:6e:95"
|
297
|
-
def mac_address(
|
298
|
-
warn_for_deprecated_arguments do |keywords|
|
299
|
-
keywords << :prefix if legacy_prefix != NOT_GIVEN
|
300
|
-
end
|
301
|
-
|
261
|
+
def mac_address(prefix: '')
|
302
262
|
prefix_digits = prefix.split(':').map { |d| d.to_i(16) }
|
303
263
|
address_digits = Array.new((6 - prefix_digits.size)) { rand(256) }
|
304
264
|
(prefix_digits + address_digits).map { |d| format('%02x', d) }.join(':')
|
@@ -440,8 +400,6 @@ module Faker
|
|
440
400
|
"#{ip_v6_address}/#{rand(1..127)}"
|
441
401
|
end
|
442
402
|
|
443
|
-
# rubocop:disable Metrics/ParameterLists
|
444
|
-
|
445
403
|
##
|
446
404
|
# Returns URL
|
447
405
|
#
|
@@ -456,16 +414,9 @@ module Faker
|
|
456
414
|
# Faker::Internet.url(host: 'faker') #=> "http://faker/shad"
|
457
415
|
# Faker::Internet.url(host: 'faker', path: '/fake_test_path') #=> "http://faker/fake_test_path"
|
458
416
|
# Faker::Internet.url(host: 'faker', path: '/fake_test_path', scheme: 'https') #=> "https://faker/fake_test_path"
|
459
|
-
def url(
|
460
|
-
warn_for_deprecated_arguments do |keywords|
|
461
|
-
keywords << :host if legacy_host != NOT_GIVEN
|
462
|
-
keywords << :path if legacy_path != NOT_GIVEN
|
463
|
-
keywords << :scheme if legacy_scheme != NOT_GIVEN
|
464
|
-
end
|
465
|
-
|
417
|
+
def url(host: domain_name, path: "/#{username}", scheme: 'http')
|
466
418
|
"#{scheme}://#{host}#{path}"
|
467
419
|
end
|
468
|
-
# rubocop:enable Metrics/ParameterLists
|
469
420
|
|
470
421
|
##
|
471
422
|
# Returns unique string in URL
|
@@ -480,12 +431,7 @@ module Faker
|
|
480
431
|
# Faker::Internet.slug(words: 'test, faker') #=> "test-faker"
|
481
432
|
# Faker::Internet.slug(words: 'test. faker') #=> "test-faker"
|
482
433
|
# Faker::Internet.slug(words: 'test. faker', glue: '$') #=> "test$faker"
|
483
|
-
def slug(
|
484
|
-
warn_for_deprecated_arguments do |keywords|
|
485
|
-
keywords << :words if legacy_words != NOT_GIVEN
|
486
|
-
keywords << :glue if legacy_glue != NOT_GIVEN
|
487
|
-
end
|
488
|
-
|
434
|
+
def slug(words: nil, glue: nil)
|
489
435
|
glue ||= sample(%w[- _])
|
490
436
|
return words.delete(',.').gsub(' ', glue).downcase unless words.nil?
|
491
437
|
|
@@ -515,11 +461,7 @@ module Faker
|
|
515
461
|
# Faker::Internet.user_agent(vendor: 'chrome') #=> "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"
|
516
462
|
# Faker::Internet.user_agent(vendor: 'safari') #=> "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"
|
517
463
|
# Faker::Internet.user_agent(vendor: 'faker') #=> "Mozilla/5.0 (Windows; U; Win 9x 4.90; SG; rv:1.9.2.4) Gecko/20101104 Netscape/9.1.0285"
|
518
|
-
def user_agent(
|
519
|
-
warn_for_deprecated_arguments do |keywords|
|
520
|
-
keywords << :vendor if legacy_vendor != NOT_GIVEN
|
521
|
-
end
|
522
|
-
|
464
|
+
def user_agent(vendor: nil)
|
523
465
|
agent_hash = translate('faker.internet.user_agent')
|
524
466
|
agents = vendor.respond_to?(:to_sym) && agent_hash[vendor.to_sym] || agent_hash[sample(agent_hash.keys)]
|
525
467
|
sample(agents)
|
@@ -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?
|
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
@@ -30,12 +30,7 @@ module Faker
|
|
30
30
|
# Faker::Lorem.words(number: 4, supplemental: true) #=> ["nisi", "sit", "allatus", "consequatur"]
|
31
31
|
#
|
32
32
|
# @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
|
-
|
33
|
+
def words(number: 3, supplemental: false)
|
39
34
|
resolved_num = resolve(number)
|
40
35
|
word_list = (
|
41
36
|
translate('faker.lorem.words') +
|
@@ -74,11 +69,7 @@ module Faker
|
|
74
69
|
# Faker::Lorem.characters(number: 10, min_alpha: 4, min_numeric: 1) #=> "ang9cbhoa8"
|
75
70
|
#
|
76
71
|
# @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
|
-
|
72
|
+
def characters(number: 255, min_alpha: 0, min_numeric: 0)
|
82
73
|
Alphanumeric.alphanumeric(number: number, min_alpha: min_alpha, min_numeric: min_numeric)
|
83
74
|
end
|
84
75
|
|
@@ -95,7 +86,6 @@ module Faker
|
|
95
86
|
def multibyte
|
96
87
|
sample(translate('faker.lorem.multibyte')).pack('C*').force_encoding('utf-8')
|
97
88
|
end
|
98
|
-
# rubocop:disable Metrics/ParameterLists
|
99
89
|
|
100
90
|
##
|
101
91
|
# Generates sentence
|
@@ -113,16 +103,9 @@ module Faker
|
|
113
103
|
# Faker::Lorem.sentence(word_count: 5, supplemental: true, random_words_to_add:2) #=> "Crinis quo cruentus velit animi vomer."
|
114
104
|
#
|
115
105
|
# @faker.version 2.1.3
|
116
|
-
def sentence(
|
117
|
-
warn_for_deprecated_arguments do |keywords|
|
118
|
-
keywords << :word_count if legacy_word_count != NOT_GIVEN
|
119
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
120
|
-
keywords << :random_words_to_add if legacy_random_words_to_add != NOT_GIVEN
|
121
|
-
end
|
122
|
-
|
106
|
+
def sentence(word_count: 4, supplemental: false, random_words_to_add: 0)
|
123
107
|
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental).join(locale_space).capitalize + locale_period
|
124
108
|
end
|
125
|
-
# rubocop:enable Metrics/ParameterLists
|
126
109
|
|
127
110
|
##
|
128
111
|
# Generates three sentences
|
@@ -138,17 +121,10 @@ module Faker
|
|
138
121
|
# Faker::Lorem.sentences(number: 2, supplemental: true) #=> ["Cito cena ad.", "Solvo animus allatus."]
|
139
122
|
#
|
140
123
|
# @faker.version 2.1.3
|
141
|
-
def sentences(
|
142
|
-
warn_for_deprecated_arguments do |keywords|
|
143
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
144
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
145
|
-
end
|
146
|
-
|
124
|
+
def sentences(number: 3, supplemental: false)
|
147
125
|
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental) }
|
148
126
|
end
|
149
127
|
|
150
|
-
# rubocop:disable Metrics/ParameterLists
|
151
|
-
|
152
128
|
##
|
153
129
|
# Generates three sentence paragraph
|
154
130
|
#
|
@@ -169,16 +145,9 @@ module Faker
|
|
169
145
|
# #=> "Texo tantillus tamisium. Tribuo amissio tamisium. Facere aut canis."
|
170
146
|
#
|
171
147
|
# @faker.version 2.1.3
|
172
|
-
def paragraph(
|
173
|
-
warn_for_deprecated_arguments do |keywords|
|
174
|
-
keywords << :sentence_count if legacy_sentence_count != NOT_GIVEN
|
175
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
176
|
-
keywords << :random_sentences_to_add if legacy_random_sentences_to_add != NOT_GIVEN
|
177
|
-
end
|
178
|
-
|
148
|
+
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 0)
|
179
149
|
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental).join(locale_space)
|
180
150
|
end
|
181
|
-
# rubocop:enable Metrics/ParameterLists
|
182
151
|
|
183
152
|
##
|
184
153
|
# Generates three paragraphs
|
@@ -194,14 +163,7 @@ module Faker
|
|
194
163
|
# Faker::Lorem.paragraphs(number:2, supplemental: true)
|
195
164
|
#
|
196
165
|
# @faker.version 2.1.3
|
197
|
-
def paragraphs(
|
198
|
-
warn_for_deprecated_arguments do |keywords|
|
199
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
200
|
-
end
|
201
|
-
warn_for_deprecated_arguments do |keywords|
|
202
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
203
|
-
end
|
204
|
-
|
166
|
+
def paragraphs(number: 3, supplemental: false)
|
205
167
|
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental) }
|
206
168
|
end
|
207
169
|
|
@@ -219,12 +181,7 @@ module Faker
|
|
219
181
|
# Faker::Lorem.paragraph_by_chars(number: 20, supplemental: true) #=> "Certus aveho admove."
|
220
182
|
#
|
221
183
|
# @faker.version 2.1.3
|
222
|
-
def paragraph_by_chars(
|
223
|
-
warn_for_deprecated_arguments do |keywords|
|
224
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
225
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
226
|
-
end
|
227
|
-
|
184
|
+
def paragraph_by_chars(number: 256, supplemental: false)
|
228
185
|
paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
|
229
186
|
|
230
187
|
paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < number
|
@@ -232,8 +189,6 @@ module Faker
|
|
232
189
|
"#{paragraph[0...number - 1]}."
|
233
190
|
end
|
234
191
|
|
235
|
-
# rubocop:disable Metrics/ParameterLists
|
236
|
-
|
237
192
|
##
|
238
193
|
# Returns the question with 4 words
|
239
194
|
#
|
@@ -250,16 +205,9 @@ module Faker
|
|
250
205
|
# Faker::Lorem.question(word_count: 2, supplemental: true, random_words_to_add: 2) #=> "Depulso uter ut?"
|
251
206
|
#
|
252
207
|
# @faker.version 2.1.3
|
253
|
-
def question(
|
254
|
-
warn_for_deprecated_arguments do |keywords|
|
255
|
-
keywords << :word_count if legacy_word_count != NOT_GIVEN
|
256
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
257
|
-
keywords << :random_words_to_add if legacy_random_words_to_add != NOT_GIVEN
|
258
|
-
end
|
259
|
-
|
208
|
+
def question(word_count: 4, supplemental: false, random_words_to_add: 0)
|
260
209
|
words(number: word_count + rand(random_words_to_add), supplemental: supplemental).join(' ').capitalize + locale_question_mark
|
261
210
|
end
|
262
|
-
# rubocop:enable Metrics/ParameterLists
|
263
211
|
|
264
212
|
##
|
265
213
|
# Generates array of three questions
|
@@ -275,12 +223,7 @@ module Faker
|
|
275
223
|
# Faker::Lorem.questions(number: 2, supplemental: true) #=> ["Acceptus subito cetera?", "Aro sulum cubicularis?"]
|
276
224
|
#
|
277
225
|
# @faker.version 2.1.3
|
278
|
-
def questions(
|
279
|
-
warn_for_deprecated_arguments do |keywords|
|
280
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
281
|
-
keywords << :supplemental if legacy_supplemental != NOT_GIVEN
|
282
|
-
end
|
283
|
-
|
226
|
+
def questions(number: 3, supplemental: false)
|
284
227
|
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental) }
|
285
228
|
end
|
286
229
|
|
@@ -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
|
|
@@ -3,6 +3,8 @@
|
|
3
3
|
module Faker
|
4
4
|
class LoremPixel < Base
|
5
5
|
class << self
|
6
|
+
extend Gem::Deprecate
|
7
|
+
|
6
8
|
SUPPORTED_CATEGORIES = %w[abstract
|
7
9
|
animals
|
8
10
|
business
|
@@ -41,16 +43,7 @@ module Faker
|
|
41
43
|
# Faker::LoremPixel.image(secure: false) #=> "http://lorempixel.com/300/300"
|
42
44
|
#
|
43
45
|
# @faker.version 1.7.0
|
44
|
-
def image(
|
45
|
-
warn_for_deprecated_arguments do |keywords|
|
46
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
47
|
-
keywords << :is_gray if legacy_is_gray != NOT_GIVEN
|
48
|
-
keywords << :category if legacy_category != NOT_GIVEN
|
49
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
50
|
-
keywords << :text if legacy_text != NOT_GIVEN
|
51
|
-
keywords << :secure if legacy_secure != NOT_GIVEN
|
52
|
-
end
|
53
|
-
|
46
|
+
def image(size: '300x300', is_gray: false, category: nil, number: nil, text: nil, secure: true)
|
54
47
|
raise ArgumentError, 'Size should be specified in format 300x300' unless size =~ /^[0-9]+x[0-9]+$/
|
55
48
|
raise ArgumentError, "Supported categories are #{SUPPORTED_CATEGORIES.join(', ')}" unless category.nil? || SUPPORTED_CATEGORIES.include?(category)
|
56
49
|
raise ArgumentError, 'Category required when number is passed' if !number.nil? && category.nil?
|
@@ -64,6 +57,7 @@ module Faker
|
|
64
57
|
url_parts += [category, number, text].compact
|
65
58
|
url_parts.join('/')
|
66
59
|
end
|
60
|
+
deprecate :image, 'Faker::LoremFlickr.image', 2022, 12
|
67
61
|
# rubocop:enable Metrics/ParameterLists
|
68
62
|
end
|
69
63
|
end
|
@@ -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
|
@@ -19,11 +19,7 @@ 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
|
|
@@ -38,11 +34,7 @@ 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
|
|
@@ -57,11 +49,7 @@ 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
|
|
@@ -76,11 +64,7 @@ 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
|
|
@@ -95,11 +79,7 @@ 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
|
|
@@ -114,11 +94,7 @@ 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
|
|
@@ -133,11 +109,7 @@ 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
|
|
@@ -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
|