faker 2.11.0 → 2.13.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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +160 -0
  3. data/README.md +11 -2
  4. data/lib/faker.rb +16 -10
  5. data/lib/faker/default/address.rb +31 -1
  6. data/lib/faker/default/bank.rb +79 -0
  7. data/lib/faker/default/blood.rb +48 -0
  8. data/lib/faker/default/business.rb +1 -1
  9. data/lib/faker/default/chile_rut.rb +44 -1
  10. data/lib/faker/default/commerce.rb +73 -10
  11. data/lib/faker/default/company.rb +40 -3
  12. data/lib/faker/default/compass.rb +135 -0
  13. data/lib/faker/default/computer.rb +63 -0
  14. data/lib/faker/default/construction.rb +54 -0
  15. data/lib/faker/default/cosmere.rb +90 -0
  16. data/lib/faker/default/crypto_coin.rb +45 -0
  17. data/lib/faker/default/date.rb +16 -12
  18. data/lib/faker/default/driving_licence.rb +42 -0
  19. data/lib/faker/default/file.rb +49 -0
  20. data/lib/faker/default/finance.rb +24 -0
  21. data/lib/faker/default/gender.rb +1 -1
  22. data/lib/faker/default/hipster.rb +94 -0
  23. data/lib/faker/default/id_number.rb +86 -0
  24. data/lib/faker/default/internet.rb +35 -7
  25. data/lib/faker/default/internet_http.rb +48 -0
  26. data/lib/faker/default/invoice.rb +32 -5
  27. data/lib/faker/default/json.rb +55 -0
  28. data/lib/faker/default/lorem_flickr.rb +65 -0
  29. data/lib/faker/default/lorem_pixel.rb +22 -0
  30. data/lib/faker/default/markdown.rb +89 -0
  31. data/lib/faker/default/measurement.rb +90 -0
  32. data/lib/faker/default/name.rb +98 -0
  33. data/lib/faker/default/nhs.rb +19 -0
  34. data/lib/faker/default/number.rb +5 -7
  35. data/lib/faker/default/omniauth.rb +58 -5
  36. data/lib/faker/default/phone_number.rb +88 -5
  37. data/lib/faker/default/placeholdit.rb +21 -0
  38. data/lib/faker/default/slack_emoji.rb +81 -0
  39. data/lib/faker/default/south_africa.rb +90 -0
  40. data/lib/faker/default/string.rb +19 -3
  41. data/lib/faker/default/stripe.rb +61 -0
  42. data/lib/faker/default/twitter.rb +35 -0
  43. data/lib/faker/default/types.rb +80 -0
  44. data/lib/faker/default/university.rb +45 -0
  45. data/lib/faker/default/vehicle.rb +184 -4
  46. data/lib/faker/default/verb.rb +45 -0
  47. data/lib/faker/default/world_cup.rb +4 -4
  48. data/lib/faker/games/control.rb +113 -0
  49. data/lib/faker/games/dnd.rb +61 -0
  50. data/lib/faker/games/heroes_of_the_storm.rb +16 -5
  51. data/lib/faker/games/minecraft.rb +48 -0
  52. data/lib/faker/games/warhammer_fantasy.rb +74 -0
  53. data/lib/faker/movies/departed.rb +49 -0
  54. data/lib/faker/movies/movie.rb +13 -0
  55. data/lib/faker/music/pearl_jam.rb +50 -0
  56. data/lib/faker/music/phish.rb +27 -1
  57. data/lib/faker/music/prince.rb +64 -0
  58. data/lib/faker/music/rush.rb +37 -0
  59. data/lib/faker/music/show.rb +49 -0
  60. data/lib/faker/quotes/quote.rb +54 -1
  61. data/lib/faker/quotes/shakespeare.rb +36 -0
  62. data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +13 -0
  63. data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
  64. data/lib/faker/tv_shows/dr_who.rb +1 -1
  65. data/lib/faker/tv_shows/futurama.rb +65 -0
  66. data/lib/faker/tv_shows/simpsons.rb +14 -0
  67. data/lib/faker/tv_shows/suits.rb +37 -0
  68. data/lib/faker/version.rb +1 -1
  69. data/lib/helpers/base58.rb +1 -1
  70. data/lib/helpers/char.rb +22 -27
  71. data/lib/locales/de-CH.yml +1693 -0
  72. data/lib/locales/en-AU.yml +44 -10
  73. data/lib/locales/en-CA.yml +2 -0
  74. data/lib/locales/en-US.yml +29 -3
  75. data/lib/locales/en/address.yml +2 -0
  76. data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
  77. data/lib/locales/en/bank.yml +1 -1
  78. data/lib/locales/en/big_bang_theory.yml +38 -0
  79. data/lib/locales/en/blood.yml +13 -0
  80. data/lib/locales/en/computer.yml +36 -0
  81. data/lib/locales/en/control.yml +247 -0
  82. data/lib/locales/en/departed.yml +50 -0
  83. data/lib/locales/en/dnd.yml +54 -0
  84. data/lib/locales/en/futurama.yml +344 -0
  85. data/lib/locales/en/heroes_of_the_storm.yml +2 -2
  86. data/lib/locales/en/house.yml +1 -1
  87. data/lib/locales/en/minecraft.yml +390 -0
  88. data/lib/locales/en/movie.yml +192 -1
  89. data/lib/locales/en/name.yml +3 -2
  90. data/lib/locales/en/one_piece.yml +2 -2
  91. data/lib/locales/en/pearl_jam.yml +213 -0
  92. data/lib/locales/en/phish.yml +392 -1
  93. data/lib/locales/en/prince.yml +227 -0
  94. data/lib/locales/en/rush.yml +32 -0
  95. data/lib/locales/en/show.yml +597 -0
  96. data/lib/locales/en/simpsons.yml +668 -0
  97. data/lib/locales/en/star_wars.yml +568 -220
  98. data/lib/locales/en/suits.yml +45 -0
  99. data/lib/locales/en/warhammer_fantasy.yml +582 -0
  100. data/lib/locales/fr-CA.yml +2 -0
  101. data/lib/locales/ko.yml +82 -0
  102. data/lib/locales/pt-BR.yml +1 -0
  103. metadata +46 -17
@@ -5,22 +5,67 @@ module Faker
5
5
  flexible :university
6
6
 
7
7
  class << self
8
+ ##
9
+ # Produces a random university name.
10
+ #
11
+ # @return [String]
12
+ #
13
+ # @example
14
+ # Faker::University.name #=> "Eastern Mississippi Academy"
15
+ #
16
+ # @faker.version 1.5.0
8
17
  def name
9
18
  parse('university.name')
10
19
  end
11
20
 
21
+ ##
22
+ # Produces a random university prefix.
23
+ #
24
+ # @return [String]
25
+ #
26
+ # @example
27
+ # Faker::University.prefix #=> "Western"
28
+ #
29
+ # @faker.version 1.5.0
12
30
  def prefix
13
31
  fetch('university.prefix')
14
32
  end
15
33
 
34
+ ##
35
+ # Produces a random university suffix.
36
+ #
37
+ # @return [String]
38
+ #
39
+ # @example
40
+ # Faker::University.suffix #=> "Academy"
41
+ #
42
+ # @faker.version 1.5.0
16
43
  def suffix
17
44
  fetch('university.suffix')
18
45
  end
19
46
 
47
+ ##
48
+ # Produces a random greek organization.
49
+ #
50
+ # @return [String]
51
+ #
52
+ # @example
53
+ # Faker::University.greek_organization #=> "BEX"
54
+ #
55
+ # @faker.version 1.5.0
20
56
  def greek_organization
21
57
  Array.new(3) { |_| sample(greek_alphabet) }.join
22
58
  end
23
59
 
60
+ ##
61
+ # Produces a greek alphabet.
62
+ #
63
+ # @return [Array]
64
+ #
65
+ # @example
66
+ # Faker::University.greek_alphabet #=> ["Α", "B", "Γ", "Δ", ...]
67
+ #
68
+ # @faker.version 1.5.0
24
69
  def greek_alphabet
25
70
  %w[Α B Γ Δ E Z H Θ I K Λ M N Ξ
26
71
  O Π P Σ T Y Φ X Ψ Ω]
@@ -14,18 +14,54 @@ module Faker
14
14
  SG_CHECKSUM_CHARS = 'AYUSPLJGDBZXTRMKHEC'
15
15
 
16
16
  class << self
17
+ # Produces a random vehicle VIN number.
18
+ #
19
+ # @return [String]
20
+ #
21
+ # @example
22
+ # Faker::Vehicle.vin #=> "LLDWXZLG77VK2LUUF"
23
+ #
24
+ # @faker.version 1.6.4
17
25
  def vin
18
26
  regexify(VIN_REGEX)
19
27
  end
20
28
 
29
+ # Produces a random vehicle manufacturer.
30
+ #
31
+ # @return [String]
32
+ #
33
+ # @example
34
+ # Faker::Vehicle.manufacture #=> "Lamborghini"
35
+ #
36
+ # @faker.version 1.6.4
21
37
  def manufacture
22
38
  fetch('vehicle.manufacture')
23
39
  end
24
40
 
41
+ ##
42
+ # Produces a random vehicle make.
43
+ #
44
+ # @return [String]
45
+ #
46
+ # @example
47
+ # Faker::Vehicle.make #=> "Honda"
48
+ #
49
+ # @faker.version 1.6.4
25
50
  def make
26
51
  fetch('vehicle.makes')
27
52
  end
28
53
 
54
+ ##
55
+ # Produces a random vehicle model.
56
+ #
57
+ # @param make_of_model [String] Specific valid vehicle make.
58
+ # @return [String]
59
+ #
60
+ # @example
61
+ # Faker::Vehicle.model #=> "A8"
62
+ # Faker::Vehicle.model(make_of_model: 'Toyota') #=> "Prius"
63
+ #
64
+ # @faker.version 1.6.4
29
65
  def model(legacy_make_of_model = NOT_GIVEN, make_of_model: '')
30
66
  warn_for_deprecated_arguments do |keywords|
31
67
  keywords << :make_of_model if legacy_make_of_model != NOT_GIVEN
@@ -36,59 +72,183 @@ module Faker
36
72
  fetch("vehicle.models_by_make.#{make_of_model}")
37
73
  end
38
74
 
75
+ ##
76
+ # Produces a random vehicle make and model.
77
+ #
78
+ # @return [String]
79
+ #
80
+ # @example
81
+ # Faker::Vehicle.make_and_model #=> "Dodge Charger"
82
+ #
83
+ # @faker.version 1.6.4
39
84
  def make_and_model
40
85
  m = make
41
86
 
42
87
  "#{m} #{model(make_of_model: m)}"
43
88
  end
44
89
 
90
+ ##
91
+ # Produces a random vehicle style.
92
+ #
93
+ # @return [String]
94
+ #
95
+ # @example
96
+ # Faker::Vehicle.style #=> "ESi"
97
+ #
98
+ # @faker.version 1.6.4
45
99
  def style
46
100
  fetch('vehicle.styles')
47
101
  end
48
102
 
103
+ ##
104
+ # Produces a random vehicle color.
105
+ #
106
+ # @return [String]
107
+ #
108
+ # @example
109
+ # Faker::Vehicle.color #=> "Red"
110
+ #
111
+ # @faker.version 1.6.4
49
112
  def color
50
113
  fetch('vehicle.colors')
51
114
  end
52
115
 
116
+ ##
117
+ # Produces a random vehicle transmission.
118
+ #
119
+ # @return [String]
120
+ #
121
+ # @example
122
+ # Faker::Vehicle.transmission #=> "Automanual"
123
+ #
124
+ # @faker.version 1.6.4
53
125
  def transmission
54
126
  fetch('vehicle.transmissions')
55
127
  end
56
128
 
129
+ ##
130
+ # Produces a random vehicle drive type.
131
+ #
132
+ # @return [String]
133
+ #
134
+ # @example
135
+ # Faker::Vehicle.drive_type #=> "4x2/2-wheel drive"
136
+ #
137
+ # @faker.version 1.6.4
57
138
  def drive_type
58
139
  fetch('vehicle.drive_types')
59
140
  end
60
141
 
142
+ ##
143
+ # Produces a random vehicle fuel type.
144
+ #
145
+ # @return [String]
146
+ #
147
+ # @example
148
+ # Faker::Vehicle.fuel_type #=> "Diesel"
149
+ #
150
+ # @faker.version 1.6.4
61
151
  def fuel_type
62
152
  fetch('vehicle.fuel_types')
63
153
  end
64
154
 
155
+ ##
156
+ # Produces a random car type.
157
+ #
158
+ # @return [String]
159
+ #
160
+ # @example
161
+ # Faker::Vehicle.car_type #=> "Sedan"
162
+ #
163
+ # @faker.version 1.6.4
65
164
  def car_type
66
165
  fetch('vehicle.car_types')
67
166
  end
68
167
 
168
+ ##
169
+ # Produces a random engine cylinder count.
170
+ #
171
+ # @return [String]
172
+ #
173
+ # @example
174
+ # Faker::Vehicle.engine_size #=> 6
175
+ # Faker::Vehicle.engine #=> 4
176
+ #
177
+ # @faker.version 1.6.4
69
178
  def engine
70
179
  "#{sample(fetch_all('vehicle.doors'))} #{fetch('vehicle.cylinder_engine')}"
71
180
  end
72
181
 
73
182
  alias engine_size engine
74
183
 
184
+ ##
185
+ # Produces a random list of car options.
186
+ #
187
+ # @return [Array<String>]
188
+ #
189
+ # @example
190
+ # Faker::Vehicle.car_options #=> ["DVD System", "MP3 (Single Disc)", "Tow Package", "CD (Multi Disc)", "Cassette Player", "Bucket Seats", "Cassette Player", "Leather Interior", "AM/FM Stereo", "Third Row Seats"]
191
+ #
192
+ # @faker.version 1.6.4
75
193
  def car_options
76
194
  Array.new(rand(5...10)) { fetch('vehicle.car_options') }
77
195
  end
78
196
 
197
+ ##
198
+ # Produces a random list of standard specs.
199
+ #
200
+ # @return [Array<String>]
201
+ #
202
+ # @example
203
+ # Faker::Vehicle.standard_specs #=> ["Full-size spare tire w/aluminum alloy wheel", "Back-up camera", "Carpeted cargo area", "Silver accent IP trim finisher -inc: silver shifter finisher", "Back-up camera", "Water-repellent windshield & front door glass", "Floor carpeting"]
204
+ #
205
+ # @faker.version 1.6.4
79
206
  def standard_specs
80
207
  Array.new(rand(5...10)) { fetch('vehicle.standard_specs') }
81
208
  end
82
209
 
210
+ ##
211
+ # Produces a random vehicle door count.
212
+ #
213
+ # @return [Integer]
214
+ #
215
+ # @example
216
+ # Faker::Vehicle.doors #=> 1
217
+ # Faker::Vehicle.door_count #=> 3
218
+ #
219
+ # @faker.version 1.6.4
83
220
  def doors
84
221
  sample(fetch_all('vehicle.doors'))
85
222
  end
86
223
  alias door_count doors
87
224
 
225
+ ##
226
+ # Produces a random car year between 1 and 15 years ago.
227
+ #
228
+ # @return [Integer]
229
+ #
230
+ # @example
231
+ # Faker::Vehicle.year #=> 2008
232
+ #
233
+ # @faker.version 1.6.4
88
234
  def year
89
235
  Faker::Time.backward(days: rand_in_range(365, 5475), period: :all, format: '%Y').to_i
90
236
  end
91
237
 
238
+ ##
239
+ # Produces a random mileage/kilometrage for a vehicle.
240
+ #
241
+ # @param min [Integer] Specific minimum limit for mileage generation.
242
+ # @param max [Integer] Specific maximum limit for mileage generation.
243
+ # @return [Integer]
244
+ #
245
+ # @example
246
+ # Faker::Vehicle.mileage #=> 26961
247
+ # Faker::Vehicle.mileage(min: 50_000) #=> 81557
248
+ # Faker::Vehicle.mileage(min: 50_000, max: 250_000) #=> 117503
249
+ # Faker::Vehicle.kilometrage #=> 35378
250
+ #
251
+ # @faker.version 1.6.4
92
252
  def mileage(legacy_min = NOT_GIVEN, legacy_max = NOT_GIVEN, min: MILEAGE_MIN, max: MILEAGE_MAX)
93
253
  warn_for_deprecated_arguments do |keywords|
94
254
  keywords << :min if legacy_min != NOT_GIVEN
@@ -100,17 +260,37 @@ module Faker
100
260
 
101
261
  alias kilometrage mileage
102
262
 
103
- def license_plate(legacy_state_abreviation = NOT_GIVEN, state_abreviation: '')
263
+ ##
264
+ # Produces a random license plate number.
265
+ #
266
+ # @param state_abbreviation [String] Two letter state abbreviation for license plate generation.
267
+ # @return [String]
268
+ #
269
+ # @example
270
+ # Faker::Vehicle.license_plate #=> "DEP-2483"
271
+ # Faker::Vehicle.license_plate(state_abbreviation: 'FL') #=> "977 UNU"
272
+ #
273
+ # @faker.version 1.6.4
274
+ def license_plate(legacy_state_abreviation = NOT_GIVEN, state_abbreviation: '')
104
275
  warn_for_deprecated_arguments do |keywords|
105
- keywords << :state_abreviation if legacy_state_abreviation != NOT_GIVEN
276
+ keywords << :state_abbreviation if legacy_state_abreviation != NOT_GIVEN
106
277
  end
107
278
 
108
- return regexify(bothify(fetch('vehicle.license_plate'))) if state_abreviation.empty?
279
+ return regexify(bothify(fetch('vehicle.license_plate'))) if state_abbreviation.empty?
109
280
 
110
- key = 'vehicle.license_plate_by_state.' + state_abreviation
281
+ key = 'vehicle.license_plate_by_state.' + state_abbreviation
111
282
  regexify(bothify(fetch(key)))
112
283
  end
113
284
 
285
+ ##
286
+ # Produces a random license plate number for Singapore.
287
+ #
288
+ # @return [String]
289
+ #
290
+ # @example
291
+ # Faker::Vehicle.singapore_license_plate #=> "SLV1854M"
292
+ #
293
+ # @faker.version 1.6.4
114
294
  def singapore_license_plate
115
295
  key = 'vehicle.license_plate'
116
296
  plate_number = regexify(bothify(fetch(key)))
@@ -3,22 +3,67 @@
3
3
  module Faker
4
4
  class Verb < Base
5
5
  class << self
6
+ ##
7
+ # Produces the base form of a random verb.
8
+ #
9
+ # @return [String]
10
+ #
11
+ # @example
12
+ # Faker::Verb.base #=> "hurt"
13
+ #
14
+ # @faker.version 1.9.0
6
15
  def base
7
16
  fetch('verbs.base')
8
17
  end
9
18
 
19
+ ##
20
+ # Produces a random verb in past tense.
21
+ #
22
+ # @return [String]
23
+ #
24
+ # @example
25
+ # Faker::Verb.past #=> "completed"
26
+ #
27
+ # @faker.version 1.9.0
10
28
  def past
11
29
  fetch('verbs.past')
12
30
  end
13
31
 
32
+ ##
33
+ # Produces a random verb in past participle.
34
+ #
35
+ # @return [String]
36
+ #
37
+ # @example
38
+ # Faker::Verb.past_participle #=> "digested"
39
+ #
40
+ # @faker.version 1.9.0
14
41
  def past_participle
15
42
  fetch('verbs.past_participle')
16
43
  end
17
44
 
45
+ ##
46
+ # Produces a random verb in simple present.
47
+ #
48
+ # @return [String]
49
+ #
50
+ # @example
51
+ # Faker::Verb.simple_present #=> "climbs"
52
+ #
53
+ # @faker.version 1.9.0
18
54
  def simple_present
19
55
  fetch('verbs.simple_present')
20
56
  end
21
57
 
58
+ ##
59
+ # Produces a random verb in the .ing form.
60
+ #
61
+ # @return [String]
62
+ #
63
+ # @example
64
+ # Faker::Verb.ing_form #=> "causing"
65
+ #
66
+ # @faker.version 1.9.0
22
67
  def ing_form
23
68
  fetch('verbs.ing_form')
24
69
  end
@@ -24,7 +24,7 @@ module Faker
24
24
  # @example
25
25
  # Faker::WorldCup.city #=> "Moscow"
26
26
  #
27
- # @faker.version next
27
+ # @faker.version 2.13.0
28
28
  def city
29
29
  fetch('world_cup.cities')
30
30
  end
@@ -37,7 +37,7 @@ module Faker
37
37
  # @example
38
38
  # Faker::WorldCup.stadium #=> "Rostov Arena"
39
39
  #
40
- # @faker.version next
40
+ # @faker.version 2.13.0
41
41
  def stadium
42
42
  fetch('world_cup.stadiums')
43
43
  end
@@ -52,7 +52,7 @@ module Faker
52
52
  # @example
53
53
  # Faker::WorldCup.group #=> "Russia"
54
54
  #
55
- # @faker.version next
55
+ # @faker.version 2.13.0
56
56
  def group(legacy_group = NOT_GIVEN, group: 'group_A')
57
57
  warn_for_deprecated_arguments do |keywords|
58
58
  keywords << :group if legacy_group != NOT_GIVEN
@@ -72,7 +72,7 @@ module Faker
72
72
  # @example
73
73
  # Faker::WorldCup.roster(country: 'Spain', type: 'forwards') #=> "Diego Costa"
74
74
  #
75
- # @faker.version next
75
+ # @faker.version 2.13.0
76
76
  def roster(legacy_country = NOT_GIVEN, legacy_type = NOT_GIVEN, country: 'Egypt', type: 'coach')
77
77
  warn_for_deprecated_arguments do |keywords|
78
78
  keywords << :country if legacy_country != NOT_GIVEN