faker 2.0.0 → 2.2.1
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 +72 -1
- data/README.md +3 -3
- data/lib/faker.rb +22 -1
- data/lib/faker/books/dune.rb +12 -2
- data/lib/faker/books/lovecraft.rb +54 -7
- data/lib/faker/default/address.rb +30 -5
- data/lib/faker/default/alphanumeric.rb +45 -7
- data/lib/faker/default/app.rb +16 -1
- data/lib/faker/default/avatar.rb +24 -1
- data/lib/faker/default/bank.rb +12 -2
- data/lib/faker/default/boolean.rb +6 -1
- data/lib/faker/default/chile_rut.rb +20 -2
- data/lib/faker/default/code.rb +22 -3
- data/lib/faker/default/commerce.rb +26 -3
- data/lib/faker/default/company.rb +12 -2
- data/lib/faker/default/crypto_coin.rb +18 -3
- data/lib/faker/default/date.rb +48 -5
- data/lib/faker/default/demographic.rb +6 -1
- data/lib/faker/default/driving_licence.rb +20 -4
- data/lib/faker/default/file.rb +36 -2
- data/lib/faker/default/fillmurray.rb +16 -1
- data/lib/faker/default/finance.rb +6 -1
- data/lib/faker/default/hipster.rb +78 -6
- data/lib/faker/default/id_number.rb +50 -3
- data/lib/faker/default/internet.rb +124 -13
- data/lib/faker/default/invoice.rb +22 -3
- data/lib/faker/default/json.rb +26 -2
- data/lib/faker/default/lorem.rb +120 -10
- data/lib/faker/default/lorem_flickr.rb +69 -5
- data/lib/faker/default/lorem_pixel.rb +26 -1
- data/lib/faker/default/markdown.rb +10 -1
- data/lib/faker/default/measurement.rb +48 -8
- data/lib/faker/default/name.rb +6 -1
- data/lib/faker/default/nhs.rb +6 -1
- data/lib/faker/default/number.rb +81 -11
- data/lib/faker/default/omniauth.rb +84 -5
- data/lib/faker/default/phone_number.rb +6 -1
- data/lib/faker/default/placeholdit.rb +24 -1
- data/lib/faker/default/relationship.rb +6 -1
- data/lib/faker/default/source.rb +22 -3
- data/lib/faker/default/string.rb +6 -1
- data/lib/faker/default/stripe.rb +24 -4
- data/lib/faker/default/time.rb +68 -4
- data/lib/faker/default/twitter.rb +26 -3
- data/lib/faker/default/types.rb +38 -5
- data/lib/faker/default/vehicle.rb +22 -3
- data/lib/faker/default/world_cup.rb +16 -2
- data/lib/faker/games/dota.rb +6 -1
- data/lib/faker/movies/star_wars.rb +6 -1
- data/lib/faker/version.rb +1 -1
- data/lib/locales/en.yml +0 -47
- metadata +11 -11
data/lib/faker/default/json.rb
CHANGED
@@ -3,7 +3,16 @@ module Faker
|
|
3
3
|
require 'json'
|
4
4
|
|
5
5
|
class << self
|
6
|
-
def shallow_json(width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
6
|
+
def shallow_json(legacy_width = NOT_GIVEN, legacy_options = NOT_GIVEN, width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
7
|
+
if legacy_width != NOT_GIVEN
|
8
|
+
warn_with_uplevel 'Passing `width` with the 1st argument of `Json.shallow_json` is deprecated. Use keyword argument like `Json.shallow_json(width: ...)` instead.', uplevel: 1
|
9
|
+
width = legacy_width
|
10
|
+
end
|
11
|
+
if legacy_options != NOT_GIVEN
|
12
|
+
warn_with_uplevel 'Passing `options` with the 2nd argument of `Json.shallow_json` is deprecated. Use keyword argument like `Json.shallow_json(options: ...)` instead.', uplevel: 1
|
13
|
+
options = legacy_options
|
14
|
+
end
|
15
|
+
|
7
16
|
options[:key] = 'Faker::' + options[:key]
|
8
17
|
options[:value] = 'Faker::' + options[:value]
|
9
18
|
|
@@ -11,7 +20,22 @@ module Faker
|
|
11
20
|
JSON.generate(hash)
|
12
21
|
end
|
13
22
|
|
14
|
-
|
23
|
+
# rubocop:disable Metrics/ParameterLists
|
24
|
+
def add_depth_to_json(legacy_json = NOT_GIVEN, legacy_width = NOT_GIVEN, legacy_options = NOT_GIVEN, json: shallow_json, width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
25
|
+
# rubocop:enable Metrics/ParameterLists
|
26
|
+
if legacy_json != NOT_GIVEN
|
27
|
+
warn_with_uplevel 'Passing `json` with the 1st argument of `Json.add_depth_to_json` is deprecated. Use keyword argument like `Json.add_depth_to_json(json: ...)` instead.', uplevel: 1
|
28
|
+
json = legacy_json
|
29
|
+
end
|
30
|
+
if legacy_width != NOT_GIVEN
|
31
|
+
warn_with_uplevel 'Passing `width` with the 2nd argument of `Json.add_depth_to_json` is deprecated. Use keyword argument like `Json.add_depth_to_json(width: ...)` instead.', uplevel: 1
|
32
|
+
width = legacy_width
|
33
|
+
end
|
34
|
+
if legacy_options != NOT_GIVEN
|
35
|
+
warn_with_uplevel 'Passing `options` with the 3rd argument of `Json.add_depth_to_json` is deprecated. Use keyword argument like `Json.add_depth_to_json(options: ...)` instead.', uplevel: 1
|
36
|
+
options = legacy_options
|
37
|
+
end
|
38
|
+
|
15
39
|
options[:key] = 'Faker::' + options[:key]
|
16
40
|
options[:value] = 'Faker::' + options[:value]
|
17
41
|
|
data/lib/faker/default/lorem.rb
CHANGED
@@ -8,7 +8,16 @@ module Faker
|
|
8
8
|
sample(translate('faker.lorem.words'))
|
9
9
|
end
|
10
10
|
|
11
|
-
def words(number: 3, supplemental: false)
|
11
|
+
def words(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
|
12
|
+
if legacy_number != NOT_GIVEN
|
13
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.words` is deprecated. Use keyword argument like `Lorem.words(number: ...)` instead.', uplevel: 1
|
14
|
+
number = legacy_number
|
15
|
+
end
|
16
|
+
if legacy_supplemental != NOT_GIVEN
|
17
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.words` is deprecated. Use keyword argument like `Lorem.words(supplemental: ...)` instead.', uplevel: 1
|
18
|
+
supplemental = legacy_supplemental
|
19
|
+
end
|
20
|
+
|
12
21
|
resolved_num = resolve(number)
|
13
22
|
word_list = (
|
14
23
|
translate('faker.lorem.words') +
|
@@ -22,31 +31,108 @@ module Faker
|
|
22
31
|
sample(Types::CHARACTERS)
|
23
32
|
end
|
24
33
|
|
25
|
-
|
26
|
-
|
34
|
+
##
|
35
|
+
# Produces a random string of alphanumeric characters
|
36
|
+
#
|
37
|
+
# @param [Integer] number
|
38
|
+
# @param [Integer] min_alpha
|
39
|
+
# @param [Integer] min_numeric
|
40
|
+
#
|
41
|
+
# @return [String]
|
42
|
+
#
|
43
|
+
# @example Faker::Lorem.characters #=> "uw1ep04lhs0c4d931n1jmrspprf5wrj85fefue0y7y6m56b6omquh7br7dhqijwlawejpl765nb1716idmp3xnfo85v349pzy2o9rir23y2qhflwr71c1585fnynguiphkjm8p0vktwitcsm16lny7jzp9t4drwav3qmhz4yjq4k04x14gl6p148hulyqioo72tf8nwrxxcclfypz2lc58lsibgfe5w5p0xv95peafjjmm2frkhdc6duoky0aha"
|
44
|
+
# @example Faker::Lorem.characters(number: 10) #=> "ang9cbhoa8"
|
45
|
+
# @example Faker::Lorem.characters(number: 10, min_alpha: 4) #=> "ang9cbhoa8"
|
46
|
+
# @example Faker::Lorem.characters(number: 10, min_alpha: 4, min_numeric: 1) #=> "ang9cbhoa8"
|
47
|
+
#
|
48
|
+
# @faker.version 2.1.3
|
49
|
+
def characters(legacy_number = NOT_GIVEN, number: 255, min_alpha: 0, min_numeric: 0)
|
50
|
+
if legacy_number != NOT_GIVEN
|
51
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.characters` is deprecated. Use keyword argument like `Lorem.characters(number: ...)` instead.', uplevel: 1
|
52
|
+
number = legacy_number
|
53
|
+
end
|
54
|
+
|
55
|
+
Alphanumeric.alphanumeric(number: number, min_alpha: min_alpha, min_numeric: min_numeric)
|
27
56
|
end
|
28
57
|
|
29
58
|
def multibyte
|
30
59
|
sample(translate('faker.lorem.multibyte')).pack('C*').force_encoding('utf-8')
|
31
60
|
end
|
32
61
|
|
33
|
-
|
62
|
+
# rubocop:disable Metrics/ParameterLists
|
63
|
+
def sentence(legacy_word_count = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, legacy_random_words_to_add = NOT_GIVEN, word_count: 4, supplemental: false, random_words_to_add: 0)
|
64
|
+
# rubocop:enable Metrics/ParameterLists
|
65
|
+
if legacy_word_count != NOT_GIVEN
|
66
|
+
warn_with_uplevel 'Passing `word_count` with the 1st argument of `Lorem.sentence` is deprecated. Use keyword argument like `Lorem.sentence(word_count: ...)` instead.', uplevel: 1
|
67
|
+
word_count = legacy_word_count
|
68
|
+
end
|
69
|
+
if legacy_supplemental != NOT_GIVEN
|
70
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.sentence` is deprecated. Use keyword argument like `Lorem.sentence(supplemental: ...)` instead.', uplevel: 1
|
71
|
+
supplemental = legacy_supplemental
|
72
|
+
end
|
73
|
+
if legacy_random_words_to_add != NOT_GIVEN
|
74
|
+
warn_with_uplevel 'Passing `random_words_to_add` with the 3rd argument of `Lorem.sentence` is deprecated. Use keyword argument like `Lorem.sentence(random_words_to_add: ...)` instead.', uplevel: 1
|
75
|
+
random_words_to_add = legacy_random_words_to_add
|
76
|
+
end
|
77
|
+
|
34
78
|
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental).join(' ').capitalize + locale_period
|
35
79
|
end
|
36
80
|
|
37
|
-
def sentences(number: 3, supplemental: false)
|
81
|
+
def sentences(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
|
82
|
+
if legacy_number != NOT_GIVEN
|
83
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.sentences` is deprecated. Use keyword argument like `Lorem.sentences(number: ...)` instead.', uplevel: 1
|
84
|
+
number = legacy_number
|
85
|
+
end
|
86
|
+
if legacy_supplemental != NOT_GIVEN
|
87
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.sentences` is deprecated. Use keyword argument like `Lorem.sentences(supplemental: ...)` instead.', uplevel: 1
|
88
|
+
supplemental = legacy_supplemental
|
89
|
+
end
|
90
|
+
|
38
91
|
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental) }
|
39
92
|
end
|
40
93
|
|
41
|
-
|
94
|
+
# rubocop:disable Metrics/ParameterLists
|
95
|
+
def paragraph(legacy_sentence_count = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, legacy_random_sentences_to_add = NOT_GIVEN, sentence_count: 3, supplemental: false, random_sentences_to_add: 0)
|
96
|
+
# rubocop:enable Metrics/ParameterLists
|
97
|
+
if legacy_sentence_count != NOT_GIVEN
|
98
|
+
warn_with_uplevel 'Passing `sentence_count` with the 1st argument of `Lorem.paragraph` is deprecated. Use keyword argument like `Lorem.paragraph(sentence_count: ...)` instead.', uplevel: 1
|
99
|
+
sentence_count = legacy_sentence_count
|
100
|
+
end
|
101
|
+
if legacy_supplemental != NOT_GIVEN
|
102
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.paragraph` is deprecated. Use keyword argument like `Lorem.paragraph(supplemental: ...)` instead.', uplevel: 1
|
103
|
+
supplemental = legacy_supplemental
|
104
|
+
end
|
105
|
+
if legacy_random_sentences_to_add != NOT_GIVEN
|
106
|
+
warn_with_uplevel 'Passing `random_sentences_to_add` with the 3rd argument of `Lorem.paragraph` is deprecated. Use keyword argument like `Lorem.paragraph(random_sentences_to_add: ...)` instead.', uplevel: 1
|
107
|
+
random_sentences_to_add = legacy_random_sentences_to_add
|
108
|
+
end
|
109
|
+
|
42
110
|
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental).join(locale_space)
|
43
111
|
end
|
44
112
|
|
45
|
-
def paragraphs(number: 3, supplemental: false)
|
113
|
+
def paragraphs(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
|
114
|
+
if legacy_number != NOT_GIVEN
|
115
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.paragraphs` is deprecated. Use keyword argument like `Lorem.paragraphs(number: ...)` instead.', uplevel: 1
|
116
|
+
number = legacy_number
|
117
|
+
end
|
118
|
+
if legacy_supplemental != NOT_GIVEN
|
119
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.paragraphs` is deprecated. Use keyword argument like `Lorem.paragraphs(supplemental: ...)` instead.', uplevel: 1
|
120
|
+
supplemental = legacy_supplemental
|
121
|
+
end
|
122
|
+
|
46
123
|
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental) }
|
47
124
|
end
|
48
125
|
|
49
|
-
def paragraph_by_chars(number: 256, supplemental: false)
|
126
|
+
def paragraph_by_chars(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 256, supplemental: false)
|
127
|
+
if legacy_number != NOT_GIVEN
|
128
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.paragraph_by_chars` is deprecated. Use keyword argument like `Lorem.paragraph_by_chars(number: ...)` instead.', uplevel: 1
|
129
|
+
number = legacy_number
|
130
|
+
end
|
131
|
+
if legacy_supplemental != NOT_GIVEN
|
132
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.paragraph_by_chars` is deprecated. Use keyword argument like `Lorem.paragraph_by_chars(supplemental: ...)` instead.', uplevel: 1
|
133
|
+
supplemental = legacy_supplemental
|
134
|
+
end
|
135
|
+
|
50
136
|
paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
|
51
137
|
|
52
138
|
paragraph += ' ' + paragraph(sentence_count: 3, supplemental: supplemental) while paragraph.length < number
|
@@ -54,11 +140,35 @@ module Faker
|
|
54
140
|
paragraph[0...number - 1] + '.'
|
55
141
|
end
|
56
142
|
|
57
|
-
|
143
|
+
# rubocop:disable Metrics/ParameterLists
|
144
|
+
def question(legacy_word_count = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, legacy_random_words_to_add = NOT_GIVEN, word_count: 4, supplemental: false, random_words_to_add: 0)
|
145
|
+
# rubocop:enable Metrics/ParameterLists
|
146
|
+
if legacy_word_count != NOT_GIVEN
|
147
|
+
warn_with_uplevel 'Passing `word_count` with the 1st argument of `Lorem.question` is deprecated. Use keyword argument like `Lorem.question(word_count: ...)` instead.', uplevel: 1
|
148
|
+
word_count = legacy_word_count
|
149
|
+
end
|
150
|
+
if legacy_supplemental != NOT_GIVEN
|
151
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.question` is deprecated. Use keyword argument like `Lorem.question(supplemental: ...)` instead.', uplevel: 1
|
152
|
+
supplemental = legacy_supplemental
|
153
|
+
end
|
154
|
+
if legacy_random_words_to_add != NOT_GIVEN
|
155
|
+
warn_with_uplevel 'Passing `random_words_to_add` with the 3rd argument of `Lorem.question` is deprecated. Use keyword argument like `Lorem.question(random_words_to_add: ...)` instead.', uplevel: 1
|
156
|
+
random_words_to_add = legacy_random_words_to_add
|
157
|
+
end
|
158
|
+
|
58
159
|
words(number: word_count + rand(random_words_to_add), supplemental: supplemental).join(' ').capitalize + locale_question_mark
|
59
160
|
end
|
60
161
|
|
61
|
-
def questions(number: 3, supplemental: false)
|
162
|
+
def questions(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
|
163
|
+
if legacy_number != NOT_GIVEN
|
164
|
+
warn_with_uplevel 'Passing `number` with the 1st argument of `Lorem.questions` is deprecated. Use keyword argument like `Lorem.questions(number: ...)` instead.', uplevel: 1
|
165
|
+
number = legacy_number
|
166
|
+
end
|
167
|
+
if legacy_supplemental != NOT_GIVEN
|
168
|
+
warn_with_uplevel 'Passing `supplemental` with the 2nd argument of `Lorem.questions` is deprecated. Use keyword argument like `Lorem.questions(supplemental: ...)` instead.', uplevel: 1
|
169
|
+
supplemental = legacy_supplemental
|
170
|
+
end
|
171
|
+
|
62
172
|
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental) }
|
63
173
|
end
|
64
174
|
|
@@ -5,23 +5,87 @@ module Faker
|
|
5
5
|
class << self
|
6
6
|
SUPPORTED_COLORIZATIONS = %w[red green blue].freeze
|
7
7
|
|
8
|
-
|
8
|
+
# rubocop:disable Metrics/ParameterLists
|
9
|
+
def image(legacy_size = NOT_GIVEN, legacy_search_terms = NOT_GIVEN, legacy_match_all = NOT_GIVEN, size: '300x300', search_terms: [], match_all: false)
|
10
|
+
# rubocop:enable Metrics/ParameterLists
|
11
|
+
if legacy_size != NOT_GIVEN
|
12
|
+
warn_with_uplevel 'Passing `size` with the 1st argument of `LoremFlickr.image` is deprecated. Use keyword argument like `LoremFlickr.image(size: ...)` instead.', uplevel: 1
|
13
|
+
size = legacy_size
|
14
|
+
end
|
15
|
+
if legacy_search_terms != NOT_GIVEN
|
16
|
+
warn_with_uplevel 'Passing `search_terms` with the 2nd argument of `LoremFlickr.image` is deprecated. Use keyword argument like `LoremFlickr.image(search_terms: ...)` instead.', uplevel: 1
|
17
|
+
search_terms = legacy_search_terms
|
18
|
+
end
|
19
|
+
if legacy_match_all != NOT_GIVEN
|
20
|
+
warn_with_uplevel 'Passing `match_all` with the 3rd argument of `LoremFlickr.image` is deprecated. Use keyword argument like `LoremFlickr.image(match_all: ...)` instead.', uplevel: 1
|
21
|
+
match_all = legacy_match_all
|
22
|
+
end
|
23
|
+
|
9
24
|
build_url(size, nil, search_terms, match_all)
|
10
25
|
end
|
11
26
|
|
12
|
-
|
27
|
+
# rubocop:disable Metrics/ParameterLists
|
28
|
+
def grayscale_image(legacy_size = NOT_GIVEN, legacy_search_terms = NOT_GIVEN, legacy_match_all = NOT_GIVEN, size: '300x300', search_terms: ['all'], match_all: false)
|
29
|
+
# rubocop:enable Metrics/ParameterLists
|
30
|
+
if legacy_size != NOT_GIVEN
|
31
|
+
warn_with_uplevel 'Passing `size` with the 1st argument of `LoremFlickr.grayscale_image` is deprecated. Use keyword argument like `LoremFlickr.grayscale_image(size: ...)` instead.', uplevel: 1
|
32
|
+
size = legacy_size
|
33
|
+
end
|
34
|
+
if legacy_search_terms != NOT_GIVEN
|
35
|
+
warn_with_uplevel 'Passing `search_terms` with the 2nd argument of `LoremFlickr.grayscale_image` is deprecated. Use keyword argument like `LoremFlickr.grayscale_image(search_terms: ...)` instead.', uplevel: 1
|
36
|
+
search_terms = legacy_search_terms
|
37
|
+
end
|
38
|
+
if legacy_match_all != NOT_GIVEN
|
39
|
+
warn_with_uplevel 'Passing `match_all` with the 3rd argument of `LoremFlickr.grayscale_image` is deprecated. Use keyword argument like `LoremFlickr.grayscale_image(match_all: ...)` instead.', uplevel: 1
|
40
|
+
match_all = legacy_match_all
|
41
|
+
end
|
42
|
+
|
13
43
|
raise ArgumentError, 'Search terms must be specified for grayscale images' unless search_terms.any?
|
14
44
|
|
15
45
|
build_url(size, 'g', search_terms, match_all)
|
16
46
|
end
|
17
47
|
|
18
|
-
|
48
|
+
# rubocop:disable Metrics/ParameterLists
|
49
|
+
def pixelated_image(legacy_size = NOT_GIVEN, legacy_search_terms = NOT_GIVEN, legacy_match_all = NOT_GIVEN, size: '300x300', search_terms: ['all'], match_all: false)
|
50
|
+
# rubocop:enable Metrics/ParameterLists
|
51
|
+
if legacy_size != NOT_GIVEN
|
52
|
+
warn_with_uplevel 'Passing `size` with the 1st argument of `LoremFlickr.pixelated_image` is deprecated. Use keyword argument like `LoremFlickr.pixelated_image(size: ...)` instead.', uplevel: 1
|
53
|
+
size = legacy_size
|
54
|
+
end
|
55
|
+
if legacy_search_terms != NOT_GIVEN
|
56
|
+
warn_with_uplevel 'Passing `search_terms` with the 2nd argument of `LoremFlickr.pixelated_image` is deprecated. Use keyword argument like `LoremFlickr.pixelated_image(search_terms: ...)` instead.', uplevel: 1
|
57
|
+
search_terms = legacy_search_terms
|
58
|
+
end
|
59
|
+
if legacy_match_all != NOT_GIVEN
|
60
|
+
warn_with_uplevel 'Passing `match_all` with the 3rd argument of `LoremFlickr.pixelated_image` is deprecated. Use keyword argument like `LoremFlickr.pixelated_image(match_all: ...)` instead.', uplevel: 1
|
61
|
+
match_all = legacy_match_all
|
62
|
+
end
|
63
|
+
|
19
64
|
raise ArgumentError, 'Search terms must be specified for pixelated images' unless search_terms.any?
|
20
65
|
|
21
66
|
build_url(size, 'p', search_terms, match_all)
|
22
67
|
end
|
23
68
|
|
24
|
-
|
69
|
+
# rubocop:disable Metrics/ParameterLists
|
70
|
+
def colorized_image(legacy_size = NOT_GIVEN, legacy_color = NOT_GIVEN, legacy_search_terms = NOT_GIVEN, legacy_match_all = NOT_GIVEN, size: '300x300', color: 'red', search_terms: ['all'], match_all: false)
|
71
|
+
# rubocop:enable Metrics/ParameterLists
|
72
|
+
if legacy_size != NOT_GIVEN
|
73
|
+
warn_with_uplevel 'Passing `size` with the 1st argument of `LoremFlickr.colorized_image` is deprecated. Use keyword argument like `LoremFlickr.colorized_image(size: ...)` instead.', uplevel: 1
|
74
|
+
size = legacy_size
|
75
|
+
end
|
76
|
+
if legacy_color != NOT_GIVEN
|
77
|
+
warn_with_uplevel 'Passing `color` with the 2nd argument of `LoremFlickr.colorized_image` is deprecated. Use keyword argument like `LoremFlickr.colorized_image(color: ...)` instead.', uplevel: 1
|
78
|
+
color = legacy_color
|
79
|
+
end
|
80
|
+
if legacy_search_terms != NOT_GIVEN
|
81
|
+
warn_with_uplevel 'Passing `search_terms` with the 3rd argument of `LoremFlickr.colorized_image` is deprecated. Use keyword argument like `LoremFlickr.colorized_image(search_terms: ...)` instead.', uplevel: 1
|
82
|
+
search_terms = legacy_search_terms
|
83
|
+
end
|
84
|
+
if legacy_match_all != NOT_GIVEN
|
85
|
+
warn_with_uplevel 'Passing `match_all` with the 4th argument of `LoremFlickr.colorized_image` is deprecated. Use keyword argument like `LoremFlickr.colorized_image(match_all: ...)` instead.', uplevel: 1
|
86
|
+
match_all = legacy_match_all
|
87
|
+
end
|
88
|
+
|
25
89
|
raise ArgumentError, 'Search terms must be specified for colorized images' unless search_terms.any?
|
26
90
|
raise ArgumentError, "Supported colorizations are #{SUPPORTED_COLORIZATIONS.join(', ')}" unless SUPPORTED_COLORIZATIONS.include?(color)
|
27
91
|
|
@@ -33,7 +97,7 @@ module Faker
|
|
33
97
|
def build_url(size, format, search_terms, match_all)
|
34
98
|
raise ArgumentError, 'Size should be specified in format 300x300' unless size =~ /^[0-9]+x[0-9]+$/
|
35
99
|
|
36
|
-
url_parts = ['
|
100
|
+
url_parts = ['https://loremflickr.com']
|
37
101
|
url_parts << format
|
38
102
|
url_parts += size.split('x')
|
39
103
|
url_parts << search_terms.compact.join(',') if search_terms.any?
|
@@ -18,7 +18,32 @@ module Faker
|
|
18
18
|
transport].freeze
|
19
19
|
|
20
20
|
# rubocop:disable Metrics/ParameterLists
|
21
|
-
def image(size: '300x300', is_gray: false, category: nil, number: nil, text: nil, secure: true)
|
21
|
+
def image(legacy_size = NOT_GIVEN, legacy_is_gray = NOT_GIVEN, legacy_category = NOT_GIVEN, legacy_number = NOT_GIVEN, legacy_text = NOT_GIVEN, legacy_secure = NOT_GIVEN, size: '300x300', is_gray: false, category: nil, number: nil, text: nil, secure: true)
|
22
|
+
if legacy_size != NOT_GIVEN
|
23
|
+
warn_with_uplevel 'Passing `size` with the 1st argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(size: ...)` instead.', uplevel: 1
|
24
|
+
size = legacy_size
|
25
|
+
end
|
26
|
+
if legacy_is_gray != NOT_GIVEN
|
27
|
+
warn_with_uplevel 'Passing `is_gray` with the 2nd argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(is_gray: ...)` instead.', uplevel: 1
|
28
|
+
is_gray = legacy_is_gray
|
29
|
+
end
|
30
|
+
if legacy_category != NOT_GIVEN
|
31
|
+
warn_with_uplevel 'Passing `category` with the 3rd argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(category: ...)` instead.', uplevel: 1
|
32
|
+
category = legacy_category
|
33
|
+
end
|
34
|
+
if legacy_number != NOT_GIVEN
|
35
|
+
warn_with_uplevel 'Passing `number` with the 4th argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(number: ...)` instead.', uplevel: 1
|
36
|
+
number = legacy_number
|
37
|
+
end
|
38
|
+
if legacy_text != NOT_GIVEN
|
39
|
+
warn_with_uplevel 'Passing `text` with the 5th argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(text: ...)` instead.', uplevel: 1
|
40
|
+
text = legacy_text
|
41
|
+
end
|
42
|
+
if legacy_secure != NOT_GIVEN
|
43
|
+
warn_with_uplevel 'Passing `secure` with the 6th argument of `LoremPixel.image` is deprecated. Use keyword argument like `LoremPixel.image(secure: ...)` instead.', uplevel: 1
|
44
|
+
secure = legacy_secure
|
45
|
+
end
|
46
|
+
|
22
47
|
raise ArgumentError, 'Size should be specified in format 300x300' unless size =~ /^[0-9]+x[0-9]+$/
|
23
48
|
raise ArgumentError, "Supported categories are #{SUPPORTED_CATEGORIES.join(', ')}" unless category.nil? || SUPPORTED_CATEGORIES.include?(category)
|
24
49
|
raise ArgumentError, 'Category required when number is passed' if !number.nil? && category.nil?
|
@@ -59,7 +59,16 @@ module Faker
|
|
59
59
|
send(method_list[rand(0..method_list.length - 1)])
|
60
60
|
end
|
61
61
|
|
62
|
-
def sandwich(sentences: 3, repeat: 1)
|
62
|
+
def sandwich(legacy_sentences = NOT_GIVEN, legacy_repeat = NOT_GIVEN, sentences: 3, repeat: 1)
|
63
|
+
if legacy_sentences != NOT_GIVEN
|
64
|
+
warn_with_uplevel 'Passing `sentences` with the 1st argument of `Markdown.sandwich` is deprecated. Use keyword argument like `Markdown.sandwich(sentences: ...)` instead.', uplevel: 1
|
65
|
+
sentences = legacy_sentences
|
66
|
+
end
|
67
|
+
if legacy_repeat != NOT_GIVEN
|
68
|
+
warn_with_uplevel 'Passing `repeat` with the 2nd argument of `Markdown.sandwich` is deprecated. Use keyword argument like `Markdown.sandwich(repeat: ...)` instead.', uplevel: 1
|
69
|
+
repeat = legacy_repeat
|
70
|
+
end
|
71
|
+
|
63
72
|
text_block = []
|
64
73
|
text_block << headers
|
65
74
|
repeat.times do
|
@@ -6,35 +6,75 @@ module Faker
|
|
6
6
|
ALL = 'all'
|
7
7
|
NONE = 'none'
|
8
8
|
|
9
|
-
def height(amount: rand(10))
|
9
|
+
def height(legacy_amount = NOT_GIVEN, amount: rand(10))
|
10
|
+
if legacy_amount != NOT_GIVEN
|
11
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.height` is deprecated. Use keyword argument like `Measurement.height(amount: ...)` instead.', uplevel: 1
|
12
|
+
amount = legacy_amount
|
13
|
+
end
|
14
|
+
|
10
15
|
define_measurement_locale(amount, 'height')
|
11
16
|
end
|
12
17
|
|
13
|
-
def length(amount: rand(10))
|
18
|
+
def length(legacy_amount = NOT_GIVEN, amount: rand(10))
|
19
|
+
if legacy_amount != NOT_GIVEN
|
20
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.length` is deprecated. Use keyword argument like `Measurement.length(amount: ...)` instead.', uplevel: 1
|
21
|
+
amount = legacy_amount
|
22
|
+
end
|
23
|
+
|
14
24
|
define_measurement_locale(amount, 'length')
|
15
25
|
end
|
16
26
|
|
17
|
-
def volume(amount: rand(10))
|
27
|
+
def volume(legacy_amount = NOT_GIVEN, amount: rand(10))
|
28
|
+
if legacy_amount != NOT_GIVEN
|
29
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.volume` is deprecated. Use keyword argument like `Measurement.volume(amount: ...)` instead.', uplevel: 1
|
30
|
+
amount = legacy_amount
|
31
|
+
end
|
32
|
+
|
18
33
|
define_measurement_locale(amount, 'volume')
|
19
34
|
end
|
20
35
|
|
21
|
-
def weight(amount: rand(10))
|
36
|
+
def weight(legacy_amount = NOT_GIVEN, amount: rand(10))
|
37
|
+
if legacy_amount != NOT_GIVEN
|
38
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.weight` is deprecated. Use keyword argument like `Measurement.weight(amount: ...)` instead.', uplevel: 1
|
39
|
+
amount = legacy_amount
|
40
|
+
end
|
41
|
+
|
22
42
|
define_measurement_locale(amount, 'weight')
|
23
43
|
end
|
24
44
|
|
25
|
-
def metric_height(amount: rand(10))
|
45
|
+
def metric_height(legacy_amount = NOT_GIVEN, amount: rand(10))
|
46
|
+
if legacy_amount != NOT_GIVEN
|
47
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.metric_height` is deprecated. Use keyword argument like `Measurement.metric_height(amount: ...)` instead.', uplevel: 1
|
48
|
+
amount = legacy_amount
|
49
|
+
end
|
50
|
+
|
26
51
|
define_measurement_locale(amount, 'metric_height')
|
27
52
|
end
|
28
53
|
|
29
|
-
def metric_length(amount: rand(10))
|
54
|
+
def metric_length(legacy_amount = NOT_GIVEN, amount: rand(10))
|
55
|
+
if legacy_amount != NOT_GIVEN
|
56
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.metric_length` is deprecated. Use keyword argument like `Measurement.metric_length(amount: ...)` instead.', uplevel: 1
|
57
|
+
amount = legacy_amount
|
58
|
+
end
|
59
|
+
|
30
60
|
define_measurement_locale(amount, 'metric_length')
|
31
61
|
end
|
32
62
|
|
33
|
-
def metric_volume(amount: rand(10))
|
63
|
+
def metric_volume(legacy_amount = NOT_GIVEN, amount: rand(10))
|
64
|
+
if legacy_amount != NOT_GIVEN
|
65
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.metric_volume` is deprecated. Use keyword argument like `Measurement.metric_volume(amount: ...)` instead.', uplevel: 1
|
66
|
+
amount = legacy_amount
|
67
|
+
end
|
68
|
+
|
34
69
|
define_measurement_locale(amount, 'metric_volume')
|
35
70
|
end
|
36
71
|
|
37
|
-
def metric_weight(amount: rand(10))
|
72
|
+
def metric_weight(legacy_amount = NOT_GIVEN, amount: rand(10))
|
73
|
+
if legacy_amount != NOT_GIVEN
|
74
|
+
warn_with_uplevel 'Passing `amount` with the 1st argument of `Measurement.metric_weight` is deprecated. Use keyword argument like `Measurement.metric_weight(amount: ...)` instead.', uplevel: 1
|
75
|
+
amount = legacy_amount
|
76
|
+
end
|
77
|
+
|
38
78
|
define_measurement_locale(amount, 'metric_weight')
|
39
79
|
end
|
40
80
|
|