faker 2.11.0 → 2.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +372 -13
  3. data/History.md +4 -4
  4. data/README.md +27 -3
  5. data/lib/faker/blockchain/aeternity.rb +4 -4
  6. data/lib/faker/blockchain/bitcoin.rb +2 -2
  7. data/lib/faker/blockchain/tezos.rb +30 -2
  8. data/lib/faker/books/dune.rb +15 -2
  9. data/lib/faker/books/lovecraft.rb +8 -4
  10. data/lib/faker/default/address.rb +35 -5
  11. data/lib/faker/default/app.rb +1 -1
  12. data/lib/faker/default/avatar.rb +1 -1
  13. data/lib/faker/default/bank.rb +96 -3
  14. data/lib/faker/default/barcode.rb +165 -0
  15. data/lib/faker/default/beer.rb +3 -3
  16. data/lib/faker/default/blood.rb +48 -0
  17. data/lib/faker/default/business.rb +1 -1
  18. data/lib/faker/default/camera.rb +46 -0
  19. data/lib/faker/default/cannabis.rb +10 -0
  20. data/lib/faker/default/chile_rut.rb +47 -3
  21. data/lib/faker/default/chuck_norris.rb +1 -0
  22. data/lib/faker/default/code.rb +98 -17
  23. data/lib/faker/default/commerce.rb +74 -11
  24. data/lib/faker/default/company.rb +96 -11
  25. data/lib/faker/default/compass.rb +135 -0
  26. data/lib/faker/default/computer.rb +63 -0
  27. data/lib/faker/default/construction.rb +54 -0
  28. data/lib/faker/default/cosmere.rb +90 -0
  29. data/lib/faker/default/crypto.rb +4 -4
  30. data/lib/faker/default/crypto_coin.rb +45 -0
  31. data/lib/faker/default/date.rb +16 -12
  32. data/lib/faker/default/driving_licence.rb +67 -1
  33. data/lib/faker/default/drone.rb +332 -0
  34. data/lib/faker/default/educator.rb +13 -0
  35. data/lib/faker/default/faker_adjective.rb +35 -0
  36. data/lib/faker/default/file.rb +53 -2
  37. data/lib/faker/default/finance.rb +45 -0
  38. data/lib/faker/default/food.rb +1 -1
  39. data/lib/faker/default/gender.rb +1 -1
  40. data/lib/faker/default/hipster.rb +107 -10
  41. data/lib/faker/default/id_number.rb +88 -2
  42. data/lib/faker/default/internet.rb +266 -12
  43. data/lib/faker/default/internet_http.rb +48 -0
  44. data/lib/faker/default/invoice.rb +33 -6
  45. data/lib/faker/default/json.rb +61 -5
  46. data/lib/faker/default/lorem.rb +160 -5
  47. data/lib/faker/default/lorem_flickr.rb +67 -7
  48. data/lib/faker/default/lorem_pixel.rb +23 -0
  49. data/lib/faker/default/markdown.rb +91 -0
  50. data/lib/faker/default/measurement.rb +93 -2
  51. data/lib/faker/default/military.rb +26 -0
  52. data/lib/faker/default/mountain.rb +33 -0
  53. data/lib/faker/default/name.rb +98 -0
  54. data/lib/faker/default/nhs.rb +19 -0
  55. data/lib/faker/default/number.rb +28 -13
  56. data/lib/faker/default/omniauth.rb +62 -14
  57. data/lib/faker/default/phone_number.rb +88 -5
  58. data/lib/faker/default/placeholdit.rb +23 -1
  59. data/lib/faker/default/relationship.rb +1 -1
  60. data/lib/faker/default/slack_emoji.rb +81 -0
  61. data/lib/faker/default/south_africa.rb +90 -0
  62. data/lib/faker/default/space.rb +1 -1
  63. data/lib/faker/default/string.rb +20 -3
  64. data/lib/faker/default/stripe.rb +64 -3
  65. data/lib/faker/default/twitter.rb +35 -0
  66. data/lib/faker/default/types.rb +84 -3
  67. data/lib/faker/default/university.rb +45 -0
  68. data/lib/faker/default/vehicle.rb +184 -4
  69. data/lib/faker/default/verb.rb +45 -0
  70. data/lib/faker/default/world_cup.rb +4 -4
  71. data/lib/faker/fantasy/tolkien.rb +67 -0
  72. data/lib/faker/games/clash_of_clans.rb +48 -0
  73. data/lib/faker/games/control.rb +113 -0
  74. data/lib/faker/games/dnd.rb +136 -0
  75. data/lib/faker/games/elder_scrolls.rb +26 -0
  76. data/lib/faker/games/heroes.rb +13 -0
  77. data/lib/faker/games/heroes_of_the_storm.rb +16 -5
  78. data/lib/faker/games/minecraft.rb +113 -0
  79. data/lib/faker/games/street_fighter.rb +61 -0
  80. data/lib/faker/games/super_mario.rb +48 -0
  81. data/lib/faker/games/touhou.rb +75 -0
  82. data/lib/faker/games/warhammer_fantasy.rb +74 -0
  83. data/lib/faker/games/world_of_warcraft.rb +26 -1
  84. data/lib/faker/japanese_media/conan.rb +48 -0
  85. data/lib/faker/japanese_media/doraemon.rb +48 -0
  86. data/lib/faker/japanese_media/dragon_ball.rb +26 -0
  87. data/lib/faker/japanese_media/naruto.rb +61 -0
  88. data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
  89. data/lib/faker/movies/departed.rb +49 -0
  90. data/lib/faker/movies/hobbit.rb +4 -4
  91. data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
  92. data/lib/faker/movies/lord_of_the_rings.rb +3 -3
  93. data/lib/faker/movies/movie.rb +13 -0
  94. data/lib/faker/movies/room.rb +63 -0
  95. data/lib/faker/movies/star_wars.rb +74 -2
  96. data/lib/faker/music/hiphop.rb +48 -0
  97. data/lib/faker/music/opera.rb +237 -1
  98. data/lib/faker/music/pearl_jam.rb +50 -0
  99. data/lib/faker/music/phish.rb +27 -1
  100. data/lib/faker/music/prince.rb +64 -0
  101. data/lib/faker/music/rock_band.rb +12 -0
  102. data/lib/faker/music/rush.rb +37 -0
  103. data/lib/faker/music/show.rb +49 -0
  104. data/lib/faker/quotes/quote.rb +80 -1
  105. data/lib/faker/quotes/rajnikanth.rb +1 -0
  106. data/lib/faker/quotes/shakespeare.rb +70 -0
  107. data/lib/faker/sports/volleyball.rb +74 -0
  108. data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +13 -0
  109. data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
  110. data/lib/faker/tv_shows/buffy.rb +17 -4
  111. data/lib/faker/tv_shows/dr_who.rb +1 -1
  112. data/lib/faker/tv_shows/final_space.rb +51 -0
  113. data/lib/faker/tv_shows/futurama.rb +65 -0
  114. data/lib/faker/tv_shows/simpsons.rb +14 -0
  115. data/lib/faker/tv_shows/suits.rb +37 -0
  116. data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +17 -4
  117. data/lib/faker/version.rb +1 -1
  118. data/lib/faker.rb +28 -23
  119. data/lib/helpers/base58.rb +1 -1
  120. data/lib/helpers/char.rb +22 -27
  121. data/lib/helpers/unique_generator.rb +0 -2
  122. data/lib/locales/de-AT.yml +4 -2
  123. data/lib/locales/de-CH.yml +1696 -1
  124. data/lib/locales/de.yml +4 -2
  125. data/lib/locales/en/address.yml +2 -0
  126. data/lib/locales/en/adjective.yml +179 -0
  127. data/lib/locales/en/animal.yml +1 -1
  128. data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
  129. data/lib/locales/en/bank.yml +1 -1
  130. data/lib/locales/en/barcode.yml +24 -0
  131. data/lib/locales/en/big_bang_theory.yml +38 -0
  132. data/lib/locales/en/blood.yml +13 -0
  133. data/lib/locales/en/buffy.yml +1 -1
  134. data/lib/locales/en/camera.yml +611 -0
  135. data/lib/locales/en/clash_of_clan.yml +101 -0
  136. data/lib/locales/en/company.yml +2 -2
  137. data/lib/locales/en/computer.yml +36 -0
  138. data/lib/locales/en/conan.yml +171 -0
  139. data/lib/locales/en/control.yml +247 -0
  140. data/lib/locales/en/demographic.yml +218 -5
  141. data/lib/locales/en/departed.yml +50 -0
  142. data/lib/locales/en/device.yml +112 -4
  143. data/lib/locales/en/dnd.yml +451 -0
  144. data/lib/locales/en/doraemon.yml +286 -0
  145. data/lib/locales/en/dota.yml +531 -63
  146. data/lib/locales/en/dragon_ball.yml +243 -1
  147. data/lib/locales/en/driving_license.yml +181 -0
  148. data/lib/locales/en/drone.yml +95 -0
  149. data/lib/locales/en/dune.yml +401 -131
  150. data/lib/locales/en/educator.yml +6 -0
  151. data/lib/locales/en/elder_scrolls.yml +583 -9
  152. data/lib/locales/en/fallout.yml +311 -133
  153. data/lib/locales/en/final_space.yml +37 -0
  154. data/lib/locales/en/finance.yml +53 -0
  155. data/lib/locales/en/football.yml +3 -3
  156. data/lib/locales/en/fresh_prince_of_bel_air.yml +1 -1
  157. data/lib/locales/en/futurama.yml +344 -0
  158. data/lib/locales/en/half_life.yml +84 -3
  159. data/lib/locales/en/heroes.yml +408 -3
  160. data/lib/locales/en/heroes_of_the_storm.yml +131 -4
  161. data/lib/locales/en/house.yml +1 -1
  162. data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
  163. data/lib/locales/en/jack_handey.yml +54 -0
  164. data/lib/locales/en/league_of_legends.yml +285 -6
  165. data/lib/locales/en/lebowski.yml +1 -1
  166. data/lib/locales/en/military.yml +179 -5
  167. data/lib/locales/en/minecraft.yml +663 -0
  168. data/lib/locales/en/mountain.yml +158 -0
  169. data/lib/locales/en/movie.yml +192 -1
  170. data/lib/locales/en/music.yml +451 -29
  171. data/lib/locales/en/myst.yml +87 -31
  172. data/lib/locales/en/name.yml +5 -4
  173. data/lib/locales/en/naruto.yml +231 -0
  174. data/lib/locales/en/one_piece.yml +2 -2
  175. data/lib/locales/en/opera.yml +168 -0
  176. data/lib/locales/en/overwatch.yml +2650 -2622
  177. data/lib/locales/en/pearl_jam.yml +213 -0
  178. data/lib/locales/en/phish.yml +392 -1
  179. data/lib/locales/en/pokemon.yml +417 -4
  180. data/lib/locales/en/prince.yml +227 -0
  181. data/lib/locales/en/quote.yml +692 -163
  182. data/lib/locales/en/rock_band.yml +1 -0
  183. data/lib/locales/en/room.yml +68 -0
  184. data/lib/locales/en/rush.yml +32 -0
  185. data/lib/locales/en/shakespeare.yml +21 -24
  186. data/lib/locales/en/show.yml +597 -0
  187. data/lib/locales/en/simpsons.yml +668 -0
  188. data/lib/locales/en/source.yml +30 -0
  189. data/lib/locales/en/star_trek.yml +1 -1
  190. data/lib/locales/en/star_wars.yml +568 -220
  191. data/lib/locales/en/street_fighter.yml +1524 -0
  192. data/lib/locales/en/studio_ghibli.yml +107 -0
  193. data/lib/locales/en/suits.yml +45 -0
  194. data/lib/locales/en/super_mario.yml +58 -0
  195. data/lib/locales/en/super_smash_bros.yml +18 -4
  196. data/lib/locales/en/tolkien.yml +2453 -0
  197. data/lib/locales/en/touhou.yml +839 -0
  198. data/lib/locales/en/volleyball.yml +501 -0
  199. data/lib/locales/en/warhammer_fantasy.yml +582 -0
  200. data/lib/locales/en/witcher.yml +389 -7
  201. data/lib/locales/en/world_of_warcraft.yml +122 -4
  202. data/lib/locales/en/zelda.yml +962 -4
  203. data/lib/locales/en-AU.yml +50 -10
  204. data/lib/locales/en-CA.yml +2 -0
  205. data/lib/locales/en-GB.yml +1 -1
  206. data/lib/locales/en-IND.yml +2 -1
  207. data/lib/locales/en-MS.yml +2 -1
  208. data/lib/locales/en-NEP.yml +4 -1
  209. data/lib/locales/en-NZ.yml +3 -1
  210. data/lib/locales/en-PAK.yml +2 -1
  211. data/lib/locales/en-SG.yml +2 -1
  212. data/lib/locales/en-US.yml +36 -10
  213. data/lib/locales/en-au-ocker.yml +2 -1
  214. data/lib/locales/en.yml +0 -3
  215. data/lib/locales/es-AR.yml +4603 -0
  216. data/lib/locales/es.yml +56 -0
  217. data/lib/locales/fi-FI.yml +1 -1
  218. data/lib/locales/fr-CA.yml +21 -5
  219. data/lib/locales/fr-CH.yml +2 -2
  220. data/lib/locales/fr.yml +12 -6
  221. data/lib/locales/id.yml +3 -1
  222. data/lib/locales/it.yml +2 -1
  223. data/lib/locales/ja.yml +18 -1
  224. data/lib/locales/ko.yml +94 -2
  225. data/lib/locales/nb-NO.yml +4 -2
  226. data/lib/locales/pt-BR.yml +2 -1
  227. data/lib/locales/pt.yml +3 -1
  228. data/lib/locales/ru.yml +3 -1
  229. data/lib/locales/sk.yml +4 -2
  230. data/lib/locales/uk.yml +2 -0
  231. metadata +90 -23
  232. data/lib/locales/en/hobbit.yml +0 -19
  233. data/lib/locales/en/lord_of_the_rings.yml +0 -6
@@ -4,10 +4,32 @@ module Faker
4
4
  # Based on Perl's Text::Lorem
5
5
  class Lorem < Base
6
6
  class << self
7
+ ##
8
+ # Returs the random word
9
+ # @return [String]
10
+ #
11
+ # @example
12
+ # Faker::Lorem.word #=> "soluto"
13
+ #
14
+ # @faker.version 2.1.3
7
15
  def word
8
16
  sample(translate('faker.lorem.words'))
9
17
  end
10
18
 
19
+ ##
20
+ # Generates random 3 words
21
+ #
22
+ # @param number [Integer] Number of words to be generated
23
+ # @param supplemental [Boolean] Whether to attach supplemental words at the end, default is false
24
+ #
25
+ # @return [Array] Array for words
26
+ #
27
+ # @example
28
+ # Faker::Lorem.words #=> ["hic", "quia", "nihil"]
29
+ # Faker::Lorem.words(number: 4) #=> ["est", "temporibus", "et", "quaerat"]
30
+ # Faker::Lorem.words(number: 4, supplemental: true) #=> ["nisi", "sit", "allatus", "consequatur"]
31
+ #
32
+ # @faker.version 2.1.3
11
33
  def words(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
12
34
  warn_for_deprecated_arguments do |keywords|
13
35
  keywords << :number if legacy_number != NOT_GIVEN
@@ -23,6 +45,15 @@ module Faker
23
45
  shuffle(word_list)[0, resolved_num]
24
46
  end
25
47
 
48
+ ##
49
+ # Generates single character
50
+ #
51
+ # @return [String]
52
+ #
53
+ # @example
54
+ # Faker::Lorem.character #=> "e"
55
+ #
56
+ # @faker.version 2.1.3
26
57
  def character
27
58
  sample(Types::CHARACTERS)
28
59
  end
@@ -51,13 +82,42 @@ module Faker
51
82
  Alphanumeric.alphanumeric(number: number, min_alpha: min_alpha, min_numeric: min_numeric)
52
83
  end
53
84
 
85
+ # rubocop:disable Style/AsciiComments
86
+
87
+ ##
88
+ # Generates the emoji
89
+ #
90
+ # @return [String]
91
+ #
92
+ # @example
93
+ # Faker::Lorem.multibyte #=> "😀"
94
+ # Faker::Lorem.multibyte #=> "❤"
95
+ #
96
+ # @faker.version 2.1.3
54
97
  def multibyte
55
98
  sample(translate('faker.lorem.multibyte')).pack('C*').force_encoding('utf-8')
56
99
  end
100
+ # rubocop:enable Style/AsciiComments
57
101
 
58
102
  # rubocop:disable Metrics/ParameterLists
103
+
104
+ ##
105
+ # Generates sentence
106
+ #
107
+ # @param word_count [Integer] How many words should be there in a sentence, default to 4
108
+ # @param supplemental [Boolean] Add supplemental words, default to false
109
+ # @param random_words_to_add [Integer] Add any random words, default to 0
110
+ #
111
+ # @return [String]
112
+ #
113
+ # @example
114
+ # Faker::Lorem.sentence #=> "Magnam qui aut quidem."
115
+ # Faker::Lorem.sentence(word_count: 5) #=> "Voluptas rerum aut aliquam velit."
116
+ # Faker::Lorem.sentence(word_count: 5, supplemental: true) #=> "Aut viscus curtus votum iusto."
117
+ # Faker::Lorem.sentence(word_count: 5, supplemental: true, random_words_to_add:2) #=> "Crinis quo cruentus velit animi vomer."
118
+ #
119
+ # @faker.version 2.1.3
59
120
  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)
60
- # rubocop:enable Metrics/ParameterLists
61
121
  warn_for_deprecated_arguments do |keywords|
62
122
  keywords << :word_count if legacy_word_count != NOT_GIVEN
63
123
  keywords << :supplemental if legacy_supplemental != NOT_GIVEN
@@ -66,7 +126,22 @@ module Faker
66
126
 
67
127
  words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental).join(locale_space).capitalize + locale_period
68
128
  end
129
+ # rubocop:enable Metrics/ParameterLists
69
130
 
131
+ ##
132
+ # Generates three sentences
133
+ #
134
+ # @param number [Integer] How many sentences to be generated, default to 3
135
+ # @param supplemental [Boolean] Should add supplemental words, defaults to false
136
+ #
137
+ # @return [Array] Returns array for sentences.
138
+ #
139
+ # @example
140
+ # Faker::Lorem.sentences #=> ["Possimus non tenetur.", "Nulla non excepturi.", "Quisquam rerum facilis."]
141
+ # Faker::Lorem.sentences(number: 2) #=> ["Nulla est natus.", "Perferendis autem cum."]
142
+ # Faker::Lorem.sentences(number: 2, supplemental: true) #=> ["Cito cena ad.", "Solvo animus allatus."]
143
+ #
144
+ # @faker.version 2.1.3
70
145
  def sentences(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
71
146
  warn_for_deprecated_arguments do |keywords|
72
147
  keywords << :number if legacy_number != NOT_GIVEN
@@ -77,8 +152,28 @@ module Faker
77
152
  end
78
153
 
79
154
  # rubocop:disable Metrics/ParameterLists
155
+
156
+ ##
157
+ # Generates three sentence paragraph
158
+ #
159
+ # @param sentence_count [Integer] Number of sentences in the paragraph
160
+ # @param supplemental [Boolean]
161
+ # @param random_sentences_to_add [Integer]
162
+ #
163
+ # @return [String]
164
+ #
165
+ # @example
166
+ # Faker::Lorem.paragraph
167
+ # #=> "Impedit et est. Aliquid deleniti necessitatibus. Et aspernatur minima."
168
+ # Faker::Lorem.paragraph(sentence_count: 2)
169
+ # #=> "Rerum fugit vitae. Et atque autem."
170
+ # Faker::Lorem.paragraph(sentence_count: 2, supplemental: true)
171
+ # #=> "Terreo coerceo utor. Vester sunt cogito."
172
+ # Faker::Lorem.paragraph(sentence_count: 2, supplemental: true, random_sentences_to_add: 2)
173
+ # #=> "Texo tantillus tamisium. Tribuo amissio tamisium. Facere aut canis."
174
+ #
175
+ # @faker.version 2.1.3
80
176
  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)
81
- # rubocop:enable Metrics/ParameterLists
82
177
  warn_for_deprecated_arguments do |keywords|
83
178
  keywords << :sentence_count if legacy_sentence_count != NOT_GIVEN
84
179
  keywords << :supplemental if legacy_supplemental != NOT_GIVEN
@@ -87,7 +182,22 @@ module Faker
87
182
 
88
183
  sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental).join(locale_space)
89
184
  end
185
+ # rubocop:enable Metrics/ParameterLists
90
186
 
187
+ ##
188
+ # Generates three paragraphs
189
+ #
190
+ # @param number [Integer]
191
+ # @param supplemental [Boolean]
192
+ #
193
+ # @return [Array]
194
+ #
195
+ # @example
196
+ # Faker::Lorem.paragraphs
197
+ # Faker::Lorem.paragraphs(number:2)
198
+ # Faker::Lorem.paragraphs(number:2, supplemental: true)
199
+ #
200
+ # @faker.version 2.1.3
91
201
  def paragraphs(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
92
202
  warn_for_deprecated_arguments do |keywords|
93
203
  keywords << :number if legacy_number != NOT_GIVEN
@@ -99,6 +209,20 @@ module Faker
99
209
  1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental) }
100
210
  end
101
211
 
212
+ ##
213
+ # Generates paragraph with 256 characters
214
+ #
215
+ # @param number [Integer]
216
+ # @param supplemental [Boolean]
217
+ #
218
+ # @return [String]
219
+ #
220
+ # @example
221
+ # Faker::Lorem.paragraph_by_chars
222
+ # Faker::Lorem.paragraph_by_chars(number: 20) #=> "Sit modi alias. Imp."
223
+ # Faker::Lorem.paragraph_by_chars(number: 20, supplemental: true) #=> "Certus aveho admove."
224
+ #
225
+ # @faker.version 2.1.3
102
226
  def paragraph_by_chars(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 256, supplemental: false)
103
227
  warn_for_deprecated_arguments do |keywords|
104
228
  keywords << :number if legacy_number != NOT_GIVEN
@@ -107,14 +231,30 @@ module Faker
107
231
 
108
232
  paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
109
233
 
110
- paragraph += ' ' + paragraph(sentence_count: 3, supplemental: supplemental) while paragraph.length < number
234
+ paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < number
111
235
 
112
- paragraph[0...number - 1] + '.'
236
+ "#{paragraph[0...number - 1]}."
113
237
  end
114
238
 
115
239
  # rubocop:disable Metrics/ParameterLists
240
+
241
+ ##
242
+ # Returns the question with 4 words
243
+ #
244
+ # @param word_count [Integer]
245
+ # @param supplemental [Boolean]
246
+ # @param random_words_to_add [Integer]
247
+ #
248
+ # @return [String]
249
+ #
250
+ # @example
251
+ # Faker::Lorem.question #=> "Natus deleniti sequi laudantium?"
252
+ # Faker::Lorem.question(word_count: 2) #=> "Quo ut?"
253
+ # Faker::Lorem.question(word_count: 2, supplemental: true) #=> "Terga consequatur?"
254
+ # Faker::Lorem.question(word_count: 2, supplemental: true, random_words_to_add: 2) #=> "Depulso uter ut?"
255
+ #
256
+ # @faker.version 2.1.3
116
257
  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)
117
- # rubocop:enable Metrics/ParameterLists
118
258
  warn_for_deprecated_arguments do |keywords|
119
259
  keywords << :word_count if legacy_word_count != NOT_GIVEN
120
260
  keywords << :supplemental if legacy_supplemental != NOT_GIVEN
@@ -123,7 +263,22 @@ module Faker
123
263
 
124
264
  words(number: word_count + rand(random_words_to_add), supplemental: supplemental).join(' ').capitalize + locale_question_mark
125
265
  end
266
+ # rubocop:enable Metrics/ParameterLists
126
267
 
268
+ ##
269
+ # Generates array of three questions
270
+ #
271
+ # @param number [Integer]
272
+ # @param supplemental [Boolean]
273
+ #
274
+ # @return [Array]
275
+ #
276
+ # @example
277
+ # Faker::Lorem.questions #=> ["Amet culpa enim?", "Voluptatem deleniti numquam?", "Veniam non cum?"]
278
+ # Faker::Lorem.questions(number: 2) #=> ["Minus occaecati nobis?", "Veniam et alias?"]
279
+ # Faker::Lorem.questions(number: 2, supplemental: true) #=> ["Acceptus subito cetera?", "Aro sulum cubicularis?"]
280
+ #
281
+ # @faker.version 2.1.3
127
282
  def questions(legacy_number = NOT_GIVEN, legacy_supplemental = NOT_GIVEN, number: 3, supplemental: false)
128
283
  warn_for_deprecated_arguments do |keywords|
129
284
  keywords << :number if legacy_number != NOT_GIVEN
@@ -6,8 +6,24 @@ module Faker
6
6
  SUPPORTED_COLORIZATIONS = %w[red green blue].freeze
7
7
 
8
8
  # rubocop:disable Metrics/ParameterLists
9
+
10
+ ##
11
+ # Produces a random image URL from loremflickr.com.
12
+ #
13
+ # @param size [String] Specifies the size of image to generate.
14
+ # @param search_terms [Array<String>] Adds search terms to the image URL.
15
+ # @param match_all [Boolean] Add "all" as part of the URL.
16
+ # @return [String]
17
+ #
18
+ # @example
19
+ # Faker::LoremFlickr.image #=> "https://loremflickr.com/300/300"
20
+ # Faker::LoremFlickr.image(size: "50x60") #=> "https://loremflickr.com/50/60"
21
+ # Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/50/60/sports"
22
+ # Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/50/60/sports,fitness"
23
+ # Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/50/60/sports,fitness/all"
24
+ #
25
+ # @faker.version 1.9.0
9
26
  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
27
  warn_for_deprecated_arguments do |keywords|
12
28
  keywords << :size if legacy_size != NOT_GIVEN
13
29
  keywords << :search_terms if legacy_search_terms != NOT_GIVEN
@@ -17,9 +33,23 @@ module Faker
17
33
  build_url(size, nil, search_terms, match_all)
18
34
  end
19
35
 
20
- # rubocop:disable Metrics/ParameterLists
36
+ ##
37
+ # Produces a random grayscale image URL from loremflickr.com.
38
+ #
39
+ # @param size [String] Specifies the size of image to generate.
40
+ # @param search_terms [Array<String>] Adds search terms to the image URL.
41
+ # @param match_all [Boolean] Add "all" as part of the URL.
42
+ # @return [String]
43
+ #
44
+ # @example
45
+ # Faker::LoremFlickr.grayscale_image #=> "https://loremflickr.com/g/300/300/all"
46
+ # Faker::LoremFlickr.grayscale_image(size: "50x60") #=> "https://loremflickr.com/g/50/60/all"
47
+ # Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/g/50/60/sports"
48
+ # Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/50/60/g/sports,fitness"
49
+ # Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/g/50/60/sports,fitness/all"
50
+ #
51
+ # @faker.version 1.9.0
21
52
  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)
22
- # rubocop:enable Metrics/ParameterLists
23
53
  warn_for_deprecated_arguments do |keywords|
24
54
  keywords << :size if legacy_size != NOT_GIVEN
25
55
  keywords << :search_terms if legacy_search_terms != NOT_GIVEN
@@ -31,9 +61,23 @@ module Faker
31
61
  build_url(size, 'g', search_terms, match_all)
32
62
  end
33
63
 
34
- # rubocop:disable Metrics/ParameterLists
64
+ ##
65
+ # Produces a random pixelated image URL from loremflickr.com.
66
+ #
67
+ # @param size [String] Specifies the size of image to generate.
68
+ # @param search_terms [Array<String>] Adds search terms to the image URL.
69
+ # @param match_all [Boolean] Add "all" as part of the URL.
70
+ # @return [String]
71
+ #
72
+ # @example
73
+ # Faker::LoremFlickr.pixelated_image #=> "https://loremflickr.com/p/300/300/all"
74
+ # Faker::LoremFlickr.pixelated_image(size: "50x60") #=> "https://loremflickr.com/p/50/60/all"
75
+ # Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/p/50/60/sports"
76
+ # Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/p/50/60/sports,fitness"
77
+ # Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/p/50/60/sports,fitness/all"
78
+ #
79
+ # @faker.version 1.9.0
35
80
  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)
36
- # rubocop:enable Metrics/ParameterLists
37
81
  warn_for_deprecated_arguments do |keywords|
38
82
  keywords << :size if legacy_size != NOT_GIVEN
39
83
  keywords << :search_terms if legacy_search_terms != NOT_GIVEN
@@ -45,9 +89,24 @@ module Faker
45
89
  build_url(size, 'p', search_terms, match_all)
46
90
  end
47
91
 
48
- # rubocop:disable Metrics/ParameterLists
92
+ ##
93
+ # Produces a random colorized image URL from loremflickr.com.
94
+ #
95
+ # @param size [String] Specifies the size of image to generate.
96
+ # @param color [String] Specifies the color of image to generate.
97
+ # @param search_terms [Array<String>] Adds search terms to the image URL.
98
+ # @param match_all [Boolean] Add "all" as part of the URL.
99
+ # @return [String]
100
+ #
101
+ # @example
102
+ # Faker::LoremFlickr.image #=> "https://loremflickr.com/red/300/300/all"
103
+ # Faker::LoremFlickr.image(size: "50x60", color: 'blue') #=> "https://loremflickr.com/blue/50/60/all"
104
+ # Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports']) #=> "https://loremflickr.com/blue/50/60/sports"
105
+ # Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/blue/50/60/sports,fitness"
106
+ # Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/blue/50/60/sports,fitness/all"
107
+ #
108
+ # @faker.version 1.9.0
49
109
  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)
50
- # rubocop:enable Metrics/ParameterLists
51
110
  warn_for_deprecated_arguments do |keywords|
52
111
  keywords << :size if legacy_size != NOT_GIVEN
53
112
  keywords << :color if legacy_color != NOT_GIVEN
@@ -60,6 +119,7 @@ module Faker
60
119
 
61
120
  build_url(size, color, search_terms, match_all)
62
121
  end
122
+ # rubocop:enable Metrics/ParameterLists
63
123
 
64
124
  private
65
125
 
@@ -18,6 +18,29 @@ module Faker
18
18
  transport].freeze
19
19
 
20
20
  # rubocop:disable Metrics/ParameterLists
21
+
22
+ ##
23
+ # Produces a random image URL from lorempixel.com.
24
+ #
25
+ # @param size [String] Specifies the size of image to generate.
26
+ # @param is_gray [Boolean] Determines if the image is gray.
27
+ # @param category [Symbol] Adds the category of the generated image to the URL.
28
+ # @param number [Integer] Adds a number as part of the URL.
29
+ # @param text [Integer] Adds dummy text as part of the URL.
30
+ # @param secure [Boolean] Changes the image URL between http and https.
31
+ # @return [String]
32
+ #
33
+ # @example
34
+ # Faker::LoremPixel.image #=> "https://lorempixel.com/300/300"
35
+ # Faker::LoremPixel.image(size: "50x60") #=> "https://lorempixel.com/50/60"
36
+ # Faker::LoremPixel.image(size: "50x60", is_gray: true) #=> "https://lorempixel.com/g/50/60"
37
+ # Faker::LoremPixel.image(size: "50x60", is_gray: false, category: 'sports') #=> "https://lorempixel.com/50/60/sports"
38
+ # Faker::LoremPixel.image(size: "50x60", is_gray: false, category: 'sports', number: 3) #=> "https://lorempixel.com/50/60/sports/3"
39
+ # Faker::LoremPixel.image(size: "50x60", is_gray: false, category: 'sports', number: 3, text: 'Dummy-text') #=> "https://lorempixel.com/50/60/sports/3/Dummy-text"
40
+ # Faker::LoremPixel.image(size: "50x60", is_gray: false, category: 'sports', number: nil, text: 'Dummy-text') #=> "https://lorempixel.com/50/60/sports/Dummy-text"
41
+ # Faker::LoremPixel.image(secure: false) #=> "http://lorempixel.com/300/300"
42
+ #
43
+ # @faker.version 1.7.0
21
44
  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
45
  warn_for_deprecated_arguments do |keywords|
23
46
  keywords << :size if legacy_size != NOT_GIVEN
@@ -3,10 +3,28 @@
3
3
  module Faker
4
4
  class Markdown < Base
5
5
  class << self
6
+ ##
7
+ # Produces a random header format.
8
+ #
9
+ # @return [String]
10
+ #
11
+ # @example
12
+ # Faker::Markdown.headers #=> "##### Autem"
13
+ #
14
+ # @faker.version 1.8.0
6
15
  def headers
7
16
  "#{fetch('markdown.headers')} #{Lorem.word.capitalize}"
8
17
  end
9
18
 
19
+ ##
20
+ # Produces a random emphasis formatting on a random word in two sentences.
21
+ #
22
+ # @return [String]
23
+ #
24
+ # @example
25
+ # Faker::Markdown.emphasis #=> "_Incidunt atque quis repellat id impedit. Quas numquam quod incidunt dicta non. Blanditiis delectus laudantium atque reiciendis qui._"
26
+ #
27
+ # @faker.version 1.8.0
10
28
  def emphasis
11
29
  paragraph = Faker::Lorem.paragraph(sentence_count: 3)
12
30
  words = paragraph.split(' ')
@@ -16,6 +34,15 @@ module Faker
16
34
  words.join(' ')
17
35
  end
18
36
 
37
+ ##
38
+ # Produces a random ordered list of items between 1 and 10 randomly.
39
+ #
40
+ # @return [String]
41
+ #
42
+ # @example
43
+ # Faker::Markdown.ordered_list #=> "1. Qui reiciendis non consequatur atque.\n2. Quo doloremque veritatis tempora aut.\n3. Aspernatur.\n4. Ea ab.\n5. Qui.\n6. Sit pariatur nemo eveniet.\n7. Molestiae aut.\n8. Nihil molestias iure placeat.\n9. Dolore autem quisquam."
44
+ #
45
+ # @faker.version 1.8.0
19
46
  def ordered_list
20
47
  number = rand(1..10)
21
48
 
@@ -26,6 +53,15 @@ module Faker
26
53
  result.join('')
27
54
  end
28
55
 
56
+ ##
57
+ # Produces a random unordered list of items between 1 and 10 randomly.
58
+ #
59
+ # @return [String]
60
+ #
61
+ # @example
62
+ # Faker::Markdown.unordered_list #=> "* Voluptatum aliquid tempora molestiae facilis non sed.\n* Nostrum omnis iste impedit voluptatum dolor.\n* Esse quidem et facere."
63
+ #
64
+ # @faker.version 1.8.0
29
65
  def unordered_list
30
66
  number = rand(1..10)
31
67
 
@@ -36,14 +72,41 @@ module Faker
36
72
  result.join('')
37
73
  end
38
74
 
75
+ ##
76
+ # Produces a random inline code snippet between two sentences.
77
+ #
78
+ # @return [String]
79
+ #
80
+ # @example
81
+ # Faker::Markdown.inline_code #=> "Aut eos quis suscipit. `Dignissimos voluptatem expedita qui.` Quo doloremque veritatis tempora aut."
82
+ #
83
+ # @faker.version 1.8.0
39
84
  def inline_code
40
85
  "`#{Faker::Lorem.sentence(word_count: 1)}`"
41
86
  end
42
87
 
88
+ ##
89
+ # Produces a random code block formatted in Ruby.
90
+ #
91
+ # @return [String]
92
+ #
93
+ # @example
94
+ # Faker::Markdown.block_code #=> "```ruby\nEos quasi qui.\n```"
95
+ #
96
+ # @faker.version 1.8.0
43
97
  def block_code
44
98
  "```ruby\n#{Lorem.sentence(word_count: 1)}\n```"
45
99
  end
46
100
 
101
+ ##
102
+ # Produces a random 3x4 table with a row of headings, a row of hyphens and two rows of data
103
+ #
104
+ # @return [String]
105
+ #
106
+ # @example
107
+ # Faker::Markdown.table #=> "ad | similique | voluptatem\n---- | ---- | ----\ncorrupti | est | rerum\nmolestiae | quidem | et"
108
+ #
109
+ # @faker.version 1.8.0
47
110
  def table
48
111
  table = []
49
112
  3.times do
@@ -53,12 +116,40 @@ module Faker
53
116
  table.join("\n")
54
117
  end
55
118
 
119
+ ##
120
+ # Produces a random method from the methods above, excluding the methods listed in the arguments.
121
+ #
122
+ # @overload random(methods)
123
+ # @param methods [Symbol] Specify which methods to exclude.
124
+ #
125
+ # @return [String, Array<String>]
126
+ #
127
+ # @example
128
+ # Faker::Markdown.random #=> returns output from a single method outlined above
129
+ # Faker::Markdown.random("table") #=> returns output from any single method outlined above except for "table"
130
+ # Faker::Markdown.random("ordered_list", "unordered_list") #=> returns output from any single method outlined above except for either ordered_list and unordered_list
131
+ #
132
+ # @faker.version 1.8.0
56
133
  def random(*args)
57
134
  method_list = available_methods
58
135
  args&.each { |ex| method_list.delete_if { |meth| meth == ex.to_sym } }
59
136
  send(method_list[rand(0..method_list.length - 1)])
60
137
  end
61
138
 
139
+ ##
140
+ # Produces a simulated blog-esque text-heavy block in markdown
141
+ #
142
+ # Keyword arguments: sentences, repeat
143
+ # @param sentences [Integer] Specifies how many sentences make a text block.
144
+ # @param repeat [Integer] Specifies how many times the text block repeats.
145
+ # @return [String]
146
+ #
147
+ # @example
148
+ # Faker::Markdown.sandwich #=> returns newline separated content of 1 header, 1 default lorem paragraph, and 1 random markdown element
149
+ # Faker::Markdown.sandwich(sentences: 5) #=> returns newline separated content of 1 header, 1 5-sentence lorem paragraph, and 1 random markdown element
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
+ #
152
+ # @faker.version 1.8.0
62
153
  def sandwich(legacy_sentences = NOT_GIVEN, legacy_repeat = NOT_GIVEN, sentences: 3, repeat: 1)
63
154
  warn_for_deprecated_arguments do |keywords|
64
155
  keywords << :sentences if legacy_sentences != NOT_GIVEN
@@ -6,6 +6,19 @@ module Faker
6
6
  ALL = 'all'
7
7
  NONE = 'none'
8
8
 
9
+ ##
10
+ # Produces a random height measurement.
11
+ #
12
+ # @param amount [Integer] Speficies the random height value.
13
+ # @return [String]
14
+ #
15
+ # @example
16
+ # Faker::Measurement.height #=> "6 inches"
17
+ # Faker::Measurement.height(amount: 1.4) #=> "1.4 inches"
18
+ # Faker::Measurement.height(amount: "none") #=> "inch"
19
+ # Faker::Measurement.height(amount: "all") #=> "inches"
20
+ #
21
+ # @faker.version 1.7.3
9
22
  def height(legacy_amount = NOT_GIVEN, amount: rand(10))
10
23
  warn_for_deprecated_arguments do |keywords|
11
24
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -14,6 +27,17 @@ module Faker
14
27
  define_measurement_locale(amount, 'height')
15
28
  end
16
29
 
30
+ ##
31
+ # Produces a random length measurement.
32
+ #
33
+ # @param amount [Integer] Speficies the random length value.
34
+ # @return [String]
35
+ #
36
+ # @example
37
+ # Faker::Measurement.length #=> "1 yard"
38
+ # Faker::Measurement.length(amount: 1.4) #=> "1.4 yards"
39
+ #
40
+ # @faker.version 1.7.3
17
41
  def length(legacy_amount = NOT_GIVEN, amount: rand(10))
18
42
  warn_for_deprecated_arguments do |keywords|
19
43
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -22,6 +46,17 @@ module Faker
22
46
  define_measurement_locale(amount, 'length')
23
47
  end
24
48
 
49
+ ##
50
+ # Produces a random volume measurement.
51
+ #
52
+ # @param amount [Integer] Speficies the random volume value.
53
+ # @return [String]
54
+ #
55
+ # @example
56
+ # Faker::Measurement.volume #=> "10 cups"
57
+ # Faker::Measurement.volume(amount: 1.4) #=> "1.4 cups"
58
+ #
59
+ # @faker.version 1.7.3
25
60
  def volume(legacy_amount = NOT_GIVEN, amount: rand(10))
26
61
  warn_for_deprecated_arguments do |keywords|
27
62
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -30,6 +65,17 @@ module Faker
30
65
  define_measurement_locale(amount, 'volume')
31
66
  end
32
67
 
68
+ ##
69
+ # Produces a random weight measurement.
70
+ #
71
+ # @param amount [Integer] Speficies the random weight value.
72
+ # @return [String]
73
+ #
74
+ # @example
75
+ # Faker::Measurement.weight #=> "3 pounds"
76
+ # Faker::Measurement.weight(amount: 1.4) #=> "1.4 pounds"
77
+ #
78
+ # @faker.version 1.7.3
33
79
  def weight(legacy_amount = NOT_GIVEN, amount: rand(10))
34
80
  warn_for_deprecated_arguments do |keywords|
35
81
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -38,6 +84,17 @@ module Faker
38
84
  define_measurement_locale(amount, 'weight')
39
85
  end
40
86
 
87
+ ##
88
+ # Produces a random metric height measurement.
89
+ #
90
+ # @param amount [Integer] Speficies the random height value.
91
+ # @return [String]
92
+ #
93
+ # @example
94
+ # Faker::Measurement.metric_height #=> "2 meters"
95
+ # Faker::Measurement.metric_height(amount: 1.4) #=> "1.4 meters"
96
+ #
97
+ # @faker.version 1.7.3
41
98
  def metric_height(legacy_amount = NOT_GIVEN, amount: rand(10))
42
99
  warn_for_deprecated_arguments do |keywords|
43
100
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -46,6 +103,17 @@ module Faker
46
103
  define_measurement_locale(amount, 'metric_height')
47
104
  end
48
105
 
106
+ ##
107
+ # Produces a random metric length measurement.
108
+ #
109
+ # @param amount [Integer] Speficies the random length value.
110
+ # @return [String]
111
+ #
112
+ # @example
113
+ # Faker::Measurement.metric_length #=> "0 decimeters"
114
+ # Faker::Measurement.metric_length(amount: 1.4) #=> "1.4 decimeters"
115
+ #
116
+ # @faker.version 1.7.3
49
117
  def metric_length(legacy_amount = NOT_GIVEN, amount: rand(10))
50
118
  warn_for_deprecated_arguments do |keywords|
51
119
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -54,6 +122,17 @@ module Faker
54
122
  define_measurement_locale(amount, 'metric_length')
55
123
  end
56
124
 
125
+ ##
126
+ # Produces a random metric volume measurement.
127
+ #
128
+ # @param amount [Integer] Speficies the random volume value.
129
+ # @return [String]
130
+ #
131
+ # @example
132
+ # Faker::Measurement.metric_volume #=> "1 liter"
133
+ # Faker::Measurement.metric_volume(amount: 1.4) #=> "1.4 liters"
134
+ #
135
+ # @faker.version 1.7.3
57
136
  def metric_volume(legacy_amount = NOT_GIVEN, amount: rand(10))
58
137
  warn_for_deprecated_arguments do |keywords|
59
138
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -62,6 +141,17 @@ module Faker
62
141
  define_measurement_locale(amount, 'metric_volume')
63
142
  end
64
143
 
144
+ ##
145
+ # Produces a random metric weight measurement.
146
+ #
147
+ # @param amount [Integer] Speficies the random weight value.
148
+ # @return [String]
149
+ #
150
+ # @example
151
+ # Faker::Measurement.metric_weight #=> "8 grams"
152
+ # Faker::Measurement.metric_weight(amount: 1.4) #=> "1.4 grams"
153
+ #
154
+ # @faker.version 1.7.3
65
155
  def metric_weight(legacy_amount = NOT_GIVEN, amount: rand(10))
66
156
  warn_for_deprecated_arguments do |keywords|
67
157
  keywords << :amount if legacy_amount != NOT_GIVEN
@@ -82,9 +172,10 @@ module Faker
82
172
 
83
173
  def define_measurement_locale(amount, locale)
84
174
  ensure_valid_amount(amount)
85
- if amount == ALL
175
+ case amount
176
+ when ALL
86
177
  make_plural(fetch("measurement.#{locale}"))
87
- elsif amount == NONE
178
+ when NONE
88
179
  fetch("measurement.#{locale}")
89
180
  else
90
181
  locale = check_for_plural(fetch("measurement.#{locale}"), amount)