faker 2.11.0 → 2.12.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +89 -0
  3. data/README.md +8 -2
  4. data/lib/faker.rb +14 -9
  5. data/lib/faker/default/address.rb +1 -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/commerce.rb +73 -10
  10. data/lib/faker/default/company.rb +39 -0
  11. data/lib/faker/default/compass.rb +135 -0
  12. data/lib/faker/default/computer.rb +63 -0
  13. data/lib/faker/default/construction.rb +54 -0
  14. data/lib/faker/default/cosmere.rb +90 -0
  15. data/lib/faker/default/crypto_coin.rb +45 -0
  16. data/lib/faker/default/driving_licence.rb +42 -0
  17. data/lib/faker/default/file.rb +49 -0
  18. data/lib/faker/default/finance.rb +24 -0
  19. data/lib/faker/default/hipster.rb +94 -0
  20. data/lib/faker/default/invoice.rb +32 -5
  21. data/lib/faker/default/json.rb +55 -0
  22. data/lib/faker/default/measurement.rb +90 -0
  23. data/lib/faker/default/name.rb +83 -0
  24. data/lib/faker/default/phone_number.rb +88 -5
  25. data/lib/faker/default/placeholdit.rb +21 -0
  26. data/lib/faker/default/slack_emoji.rb +81 -0
  27. data/lib/faker/default/south_africa.rb +90 -0
  28. data/lib/faker/default/string.rb +19 -3
  29. data/lib/faker/default/stripe.rb +61 -0
  30. data/lib/faker/default/twitter.rb +35 -0
  31. data/lib/faker/default/types.rb +80 -0
  32. data/lib/faker/default/university.rb +45 -0
  33. data/lib/faker/default/vehicle.rb +184 -4
  34. data/lib/faker/default/verb.rb +45 -0
  35. data/lib/faker/games/control.rb +113 -0
  36. data/lib/faker/games/dnd.rb +61 -0
  37. data/lib/faker/games/warhammer_fantasy.rb +74 -0
  38. data/lib/faker/movies/departed.rb +49 -0
  39. data/lib/faker/music/pearl_jam.rb +50 -0
  40. data/lib/faker/music/phish.rb +27 -1
  41. data/lib/faker/music/show.rb +49 -0
  42. data/lib/faker/quotes/quote.rb +54 -1
  43. data/lib/faker/quotes/shakespeare.rb +36 -0
  44. data/lib/faker/tv_shows/suits.rb +37 -0
  45. data/lib/faker/version.rb +1 -1
  46. data/lib/helpers/char.rb +2 -1
  47. data/lib/locales/de-CH.yml +1693 -0
  48. data/lib/locales/en-AU.yml +44 -10
  49. data/lib/locales/en-CA.yml +2 -0
  50. data/lib/locales/en-US.yml +29 -3
  51. data/lib/locales/en/address.yml +2 -0
  52. data/lib/locales/en/blood.yml +13 -0
  53. data/lib/locales/en/computer.yml +36 -0
  54. data/lib/locales/en/control.yml +247 -0
  55. data/lib/locales/en/departed.yml +50 -0
  56. data/lib/locales/en/dnd.yml +54 -0
  57. data/lib/locales/en/heroes_of_the_storm.yml +1 -1
  58. data/lib/locales/en/house.yml +1 -1
  59. data/lib/locales/en/one_piece.yml +2 -2
  60. data/lib/locales/en/pearl_jam.yml +213 -0
  61. data/lib/locales/en/phish.yml +392 -1
  62. data/lib/locales/en/show.yml +597 -0
  63. data/lib/locales/en/star_wars.yml +568 -221
  64. data/lib/locales/en/suits.yml +45 -0
  65. data/lib/locales/en/warhammer_fantasy.yml +582 -0
  66. data/lib/locales/fr-CA.yml +2 -0
  67. data/lib/locales/ko.yml +82 -0
  68. data/lib/locales/pt-BR.yml +1 -0
  69. metadata +29 -11
@@ -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
@@ -0,0 +1,113 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Games
5
+ class Control < Base
6
+ class << self
7
+ ##
8
+ # Produces the name of a character from Control.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Games::Control.character #=> "Jesse Faden"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('games.control.character')
18
+ end
19
+
20
+ ##
21
+ # Produces the name of a location from Control.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Games::Control.character #=> "Dimensional Research"
27
+ #
28
+ # @faker.version next
29
+ def location
30
+ fetch('games.control.location')
31
+ end
32
+
33
+ ##
34
+ # Produces the name of an Object of Power (OoP)
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Games::Control.object_of_power #=> "Hotline"
40
+ #
41
+ # @faker.version next
42
+ def object_of_power
43
+ fetch('games.control.object_of_power')
44
+ end
45
+
46
+ ##
47
+ # Produces the name of an Altered Item
48
+ #
49
+ # @return [String]
50
+ #
51
+ # @example
52
+ # Faker::Games::Control.altered_item #=> "Rubber Duck"
53
+ #
54
+ # @faker.version next
55
+ def altered_item
56
+ fetch('games.control.altered_item')
57
+ end
58
+
59
+ ##
60
+ # Produces the location of an Altered World Event (AWE)
61
+ #
62
+ # @return [String]
63
+ #
64
+ # @example
65
+ # Faker::Games::Control.altered_world_event #=> "Ordinary, Wisconsin"
66
+ #
67
+ # @faker.version next
68
+ def altered_world_event
69
+ fetch('games.control.altered_world_event')
70
+ end
71
+
72
+ ##
73
+ # Produces a line from the Hiss incantation
74
+ #
75
+ # @return [String]
76
+ #
77
+ # @example
78
+ # Faker::Games::Control.hiss #=> "Push the fingers through the surface into the wet."
79
+ #
80
+ # @faker.version next
81
+ def hiss
82
+ fetch('games.control.hiss')
83
+ end
84
+
85
+ ##
86
+ # < Produces a line/quote/message from The Board >
87
+ #
88
+ # @return [String]
89
+ #
90
+ # @example
91
+ # Faker::Games::Control.the_board #=> "< You/We wield the Gun/You. The Board appoints you. Congratulations, Director. >"
92
+ #
93
+ # @faker.version next
94
+ def the_board
95
+ fetch('games.control.the_board')
96
+ end
97
+
98
+ ##
99
+ # Produces a quote from Control
100
+ #
101
+ # @return [String]
102
+ #
103
+ # @example
104
+ # Faker::Games::Control.quote #=> "He never liked fridge duty"
105
+ #
106
+ # @faker.version next
107
+ def quote
108
+ fetch('games.control.quote')
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end