faker 3.1.1 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +64 -1
- data/README.md +12 -4
- data/lib/faker/default/company.rb +13 -0
- data/lib/faker/default/food.rb +13 -0
- data/lib/faker/default/internet.rb +52 -22
- data/lib/faker/default/marketing.rb +1 -1
- data/lib/faker/default/omniauth.rb +1 -1
- data/lib/faker/default/twitter.rb +1 -1
- data/lib/faker/games/dnd.rb +49 -7
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/quotes/quote.rb +13 -0
- data/lib/faker/sports/chess.rb +90 -0
- data/lib/faker/travel/airport.rb +0 -4
- data/lib/faker/version.rb +1 -1
- data/lib/faker.rb +0 -1
- data/lib/locales/ar.yml +1 -0
- data/lib/locales/bg.yml +1 -1
- data/lib/locales/da-DK.yml +1 -0
- data/lib/locales/de-AT.yml +1 -1
- data/lib/locales/de-CH.yml +1 -0
- data/lib/locales/de.yml +1 -0
- data/lib/locales/en/avatar.yml +31 -0
- data/lib/locales/en/chess.yml +103 -0
- data/lib/locales/en/company.yml +1 -0
- data/lib/locales/en/dnd.yml +186 -1
- data/lib/locales/en/food.yml +12 -0
- data/lib/locales/en/internet.yml +3 -0
- data/lib/locales/en/mitch_hedberg.yml +46 -0
- data/lib/locales/en-AU.yml +1 -0
- data/lib/locales/en-CA.yml +1 -0
- data/lib/locales/en-GB.yml +2 -0
- data/lib/locales/en-MS.yml +1 -0
- data/lib/locales/en-NG.yml +1 -0
- data/lib/locales/en-NZ.yml +1 -0
- data/lib/locales/en-PAK.yml +1 -0
- data/lib/locales/en-SG.yml +1 -0
- data/lib/locales/en-UG.yml +1 -0
- data/lib/locales/en-US.yml +1 -0
- data/lib/locales/en-ZA.yml +1 -0
- data/lib/locales/en-au-ocker.yml +2 -0
- data/lib/locales/es-AR.yml +1 -0
- data/lib/locales/es-MX.yml +1 -0
- data/lib/locales/es.yml +1 -0
- data/lib/locales/fi-FI.yml +1 -0
- data/lib/locales/fr-CA.yml +1 -0
- data/lib/locales/fr-CH.yml +1 -0
- data/lib/locales/hy.yml +1 -0
- data/lib/locales/it.yml +1 -0
- data/lib/locales/ko.yml +1 -0
- data/lib/locales/mi-NZ.yml +2 -0
- data/lib/locales/nb-NO.yml +1 -0
- data/lib/locales/nl.yml +1 -0
- data/lib/locales/pl.yml +1 -0
- data/lib/locales/pt-BR.yml +1 -0
- data/lib/locales/pt.yml +1 -0
- data/lib/locales/ru.yml +1 -0
- data/lib/locales/sk.yml +1 -0
- data/lib/locales/sv.yml +1 -0
- data/lib/locales/tr.yml +1 -0
- data/lib/locales/uk.yml +1 -0
- data/lib/locales/vi.yml +1 -0
- data/lib/locales/zh-CN.yml +1 -0
- data/lib/locales/zh-TW.yml +1 -0
- metadata +15 -11
- data/lib/faker/default/fillmurray.rb +0 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 96ec3715aa40eae20241ea0235f17234c691cbd808a5a5f523e2600979bc1c18
|
4
|
+
data.tar.gz: e57effe991fbdbc74562d35066f8db66f46be5d3d441e7b650c720a072c23a94
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a12b535d55c2e3d5559228f6b9eafd98a383692165670c7a80f4a986d1c3b23637d59faa69fcc2b06142ee2445e88ce4b8057bdf72f71eafd0c86baeb9147ed
|
7
|
+
data.tar.gz: 844caa61e4c4be1975f0fc8355302627ff9ead7cf7d423dd78313a4876190482fcb471a95fb43509e0e761d0bac671484851edbaf3cf98325d7864c591b83e6e
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,68 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [v3.2.0](https://github.com/faker-ruby/faker/tree/v3.2.0) (2023-04-14)
|
4
|
+
|
5
|
+
Happy Spring with a new Faker release! 🌼
|
6
|
+
|
7
|
+
This version changes `Faker::Internet.email`, `Faker::Internet.domain_name`, `Faker::Internet.safe_email`, and `Faker::Internet.free_email` default behavior.
|
8
|
+
|
9
|
+
These generators email are now RFC 2606 compliant. They generate safe values by default using the Reserved Top Level DNS Names: `example` and `test`. To maintain backwards compatibility and give users the option to use non-safe domains at their own risk, custom domains are allowed.
|
10
|
+
|
11
|
+
`Faker::Internet.safe_email`, and `Faker::Internet.free_email` have been deprecated. Users have until October 2023 to make the necessary changes.
|
12
|
+
|
13
|
+
[More details and updated docs can be found here](https://github.com/faker-ruby/faker/blob/main/doc/default/internet.md#about-faker-ruby-transition-to-be-rfc-2606-compliant).
|
14
|
+
|
15
|
+
Other changes included in this version:
|
16
|
+
|
17
|
+
## Features
|
18
|
+
* Generate safe `email` and `domain_name` by default (RFC 2606) by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2733
|
19
|
+
* Add avatar movie by @lexisvar in https://github.com/faker-ruby/faker/pull/2699
|
20
|
+
* add chess sport by @lexisvar in https://github.com/faker-ruby/faker/pull/2701
|
21
|
+
* Remove FillMurray service by @ferblape in https://github.com/faker-ruby/faker/pull/2702
|
22
|
+
* Add Allergens to Food by @AaronRustad in https://github.com/faker-ruby/faker/pull/2706
|
23
|
+
* Update sport docs by @clementf in https://github.com/faker-ruby/faker/pull/2716
|
24
|
+
* Add country code +44 to en-gb locale by @jremes-foss in https://github.com/faker-ruby/faker/pull/2731
|
25
|
+
* Add names to DnD generator by @dollerbill in https://github.com/faker-ruby/faker/pull/2735
|
26
|
+
* add digits to password by @wyattroyc in https://github.com/faker-ruby/faker/pull/2705
|
27
|
+
* performance: remove unnecessary i18n locale reload by @codez in https://github.com/faker-ruby/faker/pull/2723
|
28
|
+
* Add Faker::Company.department generator by @acuppy in https://github.com/faker-ruby/faker/pull/2737
|
29
|
+
* Mitch Hedberg quotes by @MosDeef in https://github.com/faker-ruby/faker/pull/2721
|
30
|
+
|
31
|
+
## Bug fixes
|
32
|
+
* Fix explanation what Marketing.buzzwords does by @danieldiekmeier in https://github.com/faker-ruby/faker/pull/2700
|
33
|
+
* fix: Typo in Faker::Travel::Airport docs by @evanlouden in https://github.com/faker-ruby/faker/pull/2712
|
34
|
+
* Fix full changelog link for 3.1.1 by @rnestler in https://github.com/faker-ruby/faker/pull/2714
|
35
|
+
* Stop publishing to RubyGem by @VladVadlja in https://github.com/faker-ruby/faker/pull/2711
|
36
|
+
* Add default_country_code in locale by @ashwin-elangovan in https://github.com/faker-ruby/faker/pull/2732
|
37
|
+
* Fix formatting in readme.md by @leon-vogt in https://github.com/faker-ruby/faker/pull/2722
|
38
|
+
|
39
|
+
## Update local dependencies
|
40
|
+
* Fix rubocop updates by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2708
|
41
|
+
* Update rubocop-minitest requirement from = 0.29.0 to = 0.30.0 by @dependabot in https://github.com/faker-ruby/faker/pull/2743
|
42
|
+
* Update minitest requirement from = 5.17.0 to = 5.18.0 by @dependabot in https://github.com/faker-ruby/faker/pull/2727
|
43
|
+
* Update rubocop requirement from = 1.48.1 to = 1.50.1 by @dependabot in https://github.com/faker-ruby/faker/pull/2747
|
44
|
+
* Add Faker::Company.department generator by @acuppy in https://github.com/faker-ruby/faker/pull/2737
|
45
|
+
* Update Pull Request template and guides by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2749
|
46
|
+
|
47
|
+
## New Contributors
|
48
|
+
* @lexisvar made their first contribution in https://github.com/faker-ruby/faker/pull/2699
|
49
|
+
* @danieldiekmeier made their first contribution in https://github.com/faker-ruby/faker/pull/2700
|
50
|
+
* @AaronRustad made their first contribution in https://github.com/faker-ruby/faker/pull/2706
|
51
|
+
* @evanlouden made their first contribution in https://github.com/faker-ruby/faker/pull/2712
|
52
|
+
* @rnestler made their first contribution in https://github.com/faker-ruby/faker/pull/2714
|
53
|
+
* @VladVadlja made their first contribution in https://github.com/faker-ruby/faker/pull/2711
|
54
|
+
* @clementf made their first contribution in https://github.com/faker-ruby/faker/pull/2716
|
55
|
+
* @leon-vogt made their first contribution in https://github.com/faker-ruby/faker/pull/2722
|
56
|
+
* @ashwin-elangovan made their first contribution in https://github.com/faker-ruby/faker/pull/2732
|
57
|
+
* @wyattroyc made their first contribution in https://github.com/faker-ruby/faker/pull/2705
|
58
|
+
* @codez made their first contribution in https://github.com/faker-ruby/faker/pull/2723
|
59
|
+
* @acuppy made their first contribution in https://github.com/faker-ruby/faker/pull/2737
|
60
|
+
* @MosDeef made their first contribution in https://github.com/faker-ruby/faker/pull/2721
|
61
|
+
|
62
|
+
**Full Changelog**: https://github.com/faker-ruby/faker/compare/v3.1.1...v3.2.0
|
63
|
+
|
64
|
+
------------------------------------------------------------------------------
|
65
|
+
|
3
66
|
## [v3.1.1](https://github.com/faker-ruby/faker/tree/v3.1.1) (2023-02-03)
|
4
67
|
|
5
68
|
Happy Valentine's Day with a new Faker release! 🎉
|
@@ -35,7 +98,7 @@ This version:
|
|
35
98
|
* @petergoldstein made their first contribution in https://github.com/faker-ruby/faker/pull/2673
|
36
99
|
* @dwilsonactual made their first contribution in https://github.com/faker-ruby/faker/pull/2693
|
37
100
|
|
38
|
-
**Full Changelog**: https://github.com/faker-ruby/faker/compare/v3.1.0...
|
101
|
+
**Full Changelog**: https://github.com/faker-ruby/faker/compare/v3.1.0...v3.1.1
|
39
102
|
|
40
103
|
------------------------------------------------------------------------------
|
41
104
|
|
data/README.md
CHANGED
@@ -27,12 +27,16 @@ and it was the original impetus for the creation of this gem).
|
|
27
27
|
## Table of Contents
|
28
28
|
|
29
29
|
- [Faker](#faker)
|
30
|
+
- [Quick links](#quick-links)
|
31
|
+
- [Table of Contents](#table-of-contents)
|
30
32
|
- [Notes](#notes)
|
31
33
|
- [Getting Started](#getting-started)
|
32
34
|
- [Usage](#usage)
|
35
|
+
- [A note about the Generators versions](#a-note-about-the-generators-versions)
|
33
36
|
- [Ensuring unique values](#ensuring-unique-values)
|
34
37
|
- [Deterministic Random](#deterministic-random)
|
35
38
|
- [Customization](#customization)
|
39
|
+
- [Minitest and Faker \>= 2.22](#minitest-and-faker--222)
|
36
40
|
- [Generators](#generators)
|
37
41
|
- [Contributing](#contributing)
|
38
42
|
- [Versioning](#versioning)
|
@@ -167,7 +171,7 @@ Faker::Config.locale = :es
|
|
167
171
|
|
168
172
|
Note: Overriding the default locale might not be thread-safe. See [Locale setting can be ignored #2563](https://github.com/faker-ruby/faker/issues/2563) for more details.
|
169
173
|
|
170
|
-
To override Faker's locales,
|
174
|
+
To override Faker's locales,
|
171
175
|
check out the [locales README](lib/locales/README.md).
|
172
176
|
|
173
177
|
### Minitest and Faker >= 2.22
|
@@ -237,7 +241,6 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
237
241
|
- [Faker::Emotion](doc/default/emotion.md)
|
238
242
|
- [Faker::Esport](doc/default/esport.md)
|
239
243
|
- [Faker::File](doc/default/file.md)
|
240
|
-
- [Faker::Fillmurray](doc/default/fillmurray.md)
|
241
244
|
- [Faker::Finance](doc/default/finance.md)
|
242
245
|
- [Faker::Food](doc/default/food.md)
|
243
246
|
- [Faker::FunnyName](doc/default/funny_name.md)
|
@@ -319,10 +322,13 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
319
322
|
</details>
|
320
323
|
|
321
324
|
<details>
|
322
|
-
<summary>
|
325
|
+
<summary>Travel</summary>
|
323
326
|
|
324
|
-
### Travel
|
325
327
|
- [Faker:Travel::Airport](doc/travel/airport.md)
|
328
|
+
</details>
|
329
|
+
|
330
|
+
<details>
|
331
|
+
<summary>Creature</summary>
|
326
332
|
|
327
333
|
- [Faker::Creature::Animal](doc/creature/animal.md)
|
328
334
|
- [Faker::Creature::Bird](doc/creature/bird.md)
|
@@ -377,6 +383,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
377
383
|
<summary>Movies</summary>
|
378
384
|
|
379
385
|
- [Faker::Movie](doc/movies/movie.md)
|
386
|
+
- [Faker::Movies::Avatar](doc/movies/avatar.md)
|
380
387
|
- [Faker::Movies::BackToTheFuture](doc/movies/back_to_the_future.md)
|
381
388
|
- [Faker::Movies::Departed](doc/movies/departed.md)
|
382
389
|
- [Faker::Movies::Ghostbusters](doc/movies/ghostbusters.md)
|
@@ -421,6 +428,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
421
428
|
|
422
429
|
- [Faker::Sports](doc/sports/sports.md)
|
423
430
|
- [Faker::Sports::Basketball](doc/sports/basketball.md)
|
431
|
+
- [Faker::Sports::Chess](doc/sports/chess.md)
|
424
432
|
- [Faker::Sports::Football](doc/sports/football.md)
|
425
433
|
- [Faker::Sports::Mountaineering](doc/sports/mountaineering.md)
|
426
434
|
- [Faker::Sports::Volleyball](doc/sports/volleyball.md)
|
@@ -151,6 +151,19 @@ module Faker
|
|
151
151
|
fetch('company.profession')
|
152
152
|
end
|
153
153
|
|
154
|
+
##
|
155
|
+
# Produces a company department.
|
156
|
+
#
|
157
|
+
# @return [String]
|
158
|
+
#
|
159
|
+
# @example
|
160
|
+
# Faker::Company.department #=> "Information Technology"
|
161
|
+
#
|
162
|
+
# @faker.version next
|
163
|
+
def department
|
164
|
+
fetch('company.department')
|
165
|
+
end
|
166
|
+
|
154
167
|
##
|
155
168
|
# Produces a company spanish organisation number.
|
156
169
|
#
|
data/lib/faker/default/food.rb
CHANGED
@@ -5,6 +5,19 @@ module Faker
|
|
5
5
|
flexible :food
|
6
6
|
|
7
7
|
class << self
|
8
|
+
##
|
9
|
+
# Retrieves an allergen.
|
10
|
+
#
|
11
|
+
# @return [String]
|
12
|
+
#
|
13
|
+
# @example
|
14
|
+
# Faker::Food.allergen #=> "Peanuts"
|
15
|
+
#
|
16
|
+
# @faker.version next
|
17
|
+
def allergen
|
18
|
+
fetch('food.allergens')
|
19
|
+
end
|
20
|
+
|
8
21
|
##
|
9
22
|
# Retrieves a typical dish from each country.
|
10
23
|
#
|
@@ -15,6 +15,8 @@ module Faker
|
|
15
15
|
].each(&:freeze).freeze
|
16
16
|
|
17
17
|
class << self
|
18
|
+
extend Gem::Deprecate
|
19
|
+
|
18
20
|
##
|
19
21
|
# Returns the email address
|
20
22
|
#
|
@@ -25,10 +27,11 @@ module Faker
|
|
25
27
|
# @param domain [String]
|
26
28
|
#
|
27
29
|
# @example
|
28
|
-
# Faker::Internet.email #=> "
|
29
|
-
# Faker::Internet.email(name: 'smith') #=> "smith@
|
30
|
-
# Faker::Internet.email(name: 'sam smith', separators: ['-']) #=> "sam
|
31
|
-
# Faker::Internet.email(name: 'sam smith', separators: ['-'], domain: '
|
30
|
+
# Faker::Internet.email #=> "renee@zieme.test"
|
31
|
+
# Faker::Internet.email(name: 'smith') #=> "smith@bergnaum.test"
|
32
|
+
# Faker::Internet.email(name: 'sam smith', separators: ['-']) #=> "smith-sam@tromp.example"
|
33
|
+
# Faker::Internet.email(name: 'sam smith', separators: ['-'], domain: 'test') #=> "sam-smith@test.example"
|
34
|
+
# Faker::Internet.email(domain: 'gmail.com') #=> "foo@gmail.com"
|
32
35
|
def email(name: nil, separators: nil, domain: nil)
|
33
36
|
local_part = if separators
|
34
37
|
username(specifier: name, separators: separators)
|
@@ -37,7 +40,14 @@ module Faker
|
|
37
40
|
end
|
38
41
|
|
39
42
|
sanitized_local_part = sanitize_email_local_part(local_part)
|
40
|
-
|
43
|
+
|
44
|
+
generate_domain = if domain.nil?
|
45
|
+
domain_name
|
46
|
+
else
|
47
|
+
domain_name(domain: domain)
|
48
|
+
end
|
49
|
+
|
50
|
+
construct_email(sanitized_local_part, generate_domain)
|
41
51
|
end
|
42
52
|
|
43
53
|
##
|
@@ -56,6 +66,7 @@ module Faker
|
|
56
66
|
fetch('internet.free_email')
|
57
67
|
)
|
58
68
|
end
|
69
|
+
deprecate :free_email, :email, 2023, 10
|
59
70
|
|
60
71
|
##
|
61
72
|
# Returns the email address with fixed domain name as 'example'
|
@@ -73,6 +84,7 @@ module Faker
|
|
73
84
|
"example.#{sample(%w[org com net])}"
|
74
85
|
)
|
75
86
|
end
|
87
|
+
deprecate :safe_email, :email, 2023, 10
|
76
88
|
|
77
89
|
##
|
78
90
|
# Returns the username
|
@@ -174,6 +186,10 @@ module Faker
|
|
174
186
|
password << lower_chars[rand(lower_chars.count - 1)]
|
175
187
|
character_bag += lower_chars
|
176
188
|
|
189
|
+
digits = ('1'..'9').to_a
|
190
|
+
password << digits[rand(digits.count - 1)]
|
191
|
+
character_bag += digits
|
192
|
+
|
177
193
|
if character_types.include?(:mix_case)
|
178
194
|
upper_chars = ('A'..'Z').to_a
|
179
195
|
password << upper_chars[rand(upper_chars.count - 1)]
|
@@ -200,10 +216,12 @@ module Faker
|
|
200
216
|
# @param domain [String]
|
201
217
|
#
|
202
218
|
# @example
|
203
|
-
# Faker::Internet.domain_name
|
204
|
-
# Faker::Internet.domain_name(subdomain: true)
|
205
|
-
# Faker::Internet.domain_name(subdomain: true, domain: '
|
206
|
-
# Faker::Internet.domain_name(domain: 'faker')
|
219
|
+
# Faker::Internet.domain_name #=> "altenwerth-gerhold.example"
|
220
|
+
# Faker::Internet.domain_name(subdomain: true) #=> "metz.mclaughlin-brekke.test"
|
221
|
+
# Faker::Internet.domain_name(subdomain: true, domain: 'faker') #=> "foo.faker.test"
|
222
|
+
# Faker::Internet.domain_name(domain: 'faker-ruby.org') #=> "faker-ruby.org"
|
223
|
+
# Faker::Internet.domain_name(subdomain: true, domain: 'faker-ruby.org') #=> "foo.faker-ruby.org"
|
224
|
+
# Faker::Internet.domain_name(subdomain: true, domain: 'faker.faker-ruby.org') #=> "faker.faker-ruby.org"
|
207
225
|
def domain_name(subdomain: false, domain: nil)
|
208
226
|
with_locale(:en) do
|
209
227
|
if domain
|
@@ -211,12 +229,18 @@ module Faker
|
|
211
229
|
.split('.')
|
212
230
|
.map { |domain_part| Char.prepare(domain_part) }
|
213
231
|
.tap do |domain_elements|
|
214
|
-
|
215
|
-
|
232
|
+
if domain_elements.length < 2
|
233
|
+
domain_elements << domain_suffix(safe: true)
|
234
|
+
end
|
235
|
+
if subdomain && domain_elements.length < 3
|
236
|
+
domain_elements.unshift(Char.prepare(domain_word))
|
237
|
+
end
|
216
238
|
end.join('.')
|
217
239
|
else
|
218
|
-
[domain_word, domain_suffix].tap do |domain_elements|
|
219
|
-
|
240
|
+
[domain_word, domain_suffix(safe: true)].tap do |domain_elements|
|
241
|
+
if subdomain
|
242
|
+
domain_elements.unshift(Char.prepare(domain_word))
|
243
|
+
end
|
220
244
|
end.join('.')
|
221
245
|
end
|
222
246
|
end
|
@@ -253,10 +277,16 @@ module Faker
|
|
253
277
|
# @return [String]
|
254
278
|
#
|
255
279
|
# @example
|
256
|
-
# Faker::Internet.domain_suffix
|
257
|
-
# Faker::Internet.domain_suffix
|
258
|
-
|
259
|
-
|
280
|
+
# Faker::Internet.domain_suffix #=> "com"
|
281
|
+
# Faker::Internet.domain_suffix #=> "biz"
|
282
|
+
# Faker::Internet.domain_suffix(safe: true) #=> "example"
|
283
|
+
# Faker::Internet.domain_suffix(safe: true) #=> "test"
|
284
|
+
def domain_suffix(safe: nil)
|
285
|
+
if safe
|
286
|
+
fetch('internet.safe_domain_suffix')
|
287
|
+
else
|
288
|
+
fetch('internet.domain_suffix')
|
289
|
+
end
|
260
290
|
end
|
261
291
|
|
262
292
|
##
|
@@ -421,10 +451,10 @@ module Faker
|
|
421
451
|
# @param scheme [String]
|
422
452
|
#
|
423
453
|
# @example
|
424
|
-
# Faker::Internet.url #=> "http://
|
454
|
+
# Faker::Internet.url #=> "http://treutel.test/demarcus"
|
425
455
|
# Faker::Internet.url(host: 'faker') #=> "http://faker/shad"
|
426
|
-
# Faker::Internet.url(host: 'faker', path: '/
|
427
|
-
# Faker::Internet.url(host: 'faker', path: '/
|
456
|
+
# Faker::Internet.url(host: 'faker', path: '/docs') #=> "http://faker/docs"
|
457
|
+
# Faker::Internet.url(host: 'faker', path: '/docs', scheme: 'https') #=> "https://faker/docs"
|
428
458
|
def url(host: domain_name, path: "/#{username}", scheme: 'http')
|
429
459
|
"#{scheme}://#{host}#{path}"
|
430
460
|
end
|
@@ -542,10 +572,10 @@ module Faker
|
|
542
572
|
##
|
543
573
|
# Produces a randomized hash of internet user details
|
544
574
|
# @example
|
545
|
-
# Faker::Internet.user #=> { username: 'alexie', email: '
|
575
|
+
# Faker::Internet.user #=> { username: 'alexie', email: 'trudie@grant.test' }
|
546
576
|
#
|
547
577
|
# @example
|
548
|
-
# Faker::Internet.user('username', 'email', 'password') #=> { username: 'alexie', email: '
|
578
|
+
# Faker::Internet.user('username', 'email', 'password') #=> { username: 'alexie', email: 'gayle@kohler.test', password: 'DtEf9P8wS31iMyC' }
|
549
579
|
#
|
550
580
|
# @return [hash]
|
551
581
|
#
|
@@ -63,7 +63,7 @@ module Faker
|
|
63
63
|
verified: Faker::Boolean.boolean(true_ratio: 0.1)
|
64
64
|
}
|
65
65
|
user[:status] = Faker::Twitter.status(include_user: false) if include_status
|
66
|
-
user[:email] = Faker::Internet.
|
66
|
+
user[:email] = Faker::Internet.email if include_email
|
67
67
|
user
|
68
68
|
end
|
69
69
|
|
data/lib/faker/games/dnd.rb
CHANGED
@@ -43,6 +43,19 @@ module Faker
|
|
43
43
|
fetch('dnd.cities')
|
44
44
|
end
|
45
45
|
|
46
|
+
##
|
47
|
+
# Produces the first name of a character or monster from Dungeons and Dragons.
|
48
|
+
#
|
49
|
+
# @return [String]
|
50
|
+
#
|
51
|
+
# @example
|
52
|
+
# Faker::Games::DnD.name #=> "Eilonwy"
|
53
|
+
#
|
54
|
+
# @faker.version next
|
55
|
+
def first_name
|
56
|
+
fetch('dnd.name.first_name')
|
57
|
+
end
|
58
|
+
|
46
59
|
##
|
47
60
|
# Produces the name of a class from Dungeons and Dragons (PHB).
|
48
61
|
#
|
@@ -69,6 +82,19 @@ module Faker
|
|
69
82
|
fetch('dnd.languages')
|
70
83
|
end
|
71
84
|
|
85
|
+
##
|
86
|
+
# Produces a last name from Dungeons and Dragons.
|
87
|
+
#
|
88
|
+
# @return [String]
|
89
|
+
#
|
90
|
+
# @example
|
91
|
+
# Faker::Games::DnD.last_name #=> "Leafwhisper"
|
92
|
+
#
|
93
|
+
# @faker.version next
|
94
|
+
def last_name
|
95
|
+
fetch('dnd.name.last_name')
|
96
|
+
end
|
97
|
+
|
72
98
|
##
|
73
99
|
# Produces the name of a melee weapon from Dungeons and Dragons.
|
74
100
|
#
|
@@ -95,6 +121,19 @@ module Faker
|
|
95
121
|
fetch('dnd.monsters')
|
96
122
|
end
|
97
123
|
|
124
|
+
##
|
125
|
+
# Produces a full name from Dungeons and Dragons.
|
126
|
+
#
|
127
|
+
# @return [String]
|
128
|
+
#
|
129
|
+
# @example
|
130
|
+
# Faker::Games::DnD.name #=> "Drakon Blackthorn"
|
131
|
+
#
|
132
|
+
# @faker.version next
|
133
|
+
def name
|
134
|
+
"#{fetch('dnd.name.first_name')} #{fetch('dnd.name.last_name')}"
|
135
|
+
end
|
136
|
+
|
98
137
|
##
|
99
138
|
# Produces the name of a race from Dungeons and Dragons (PHB).
|
100
139
|
#
|
@@ -121,14 +160,17 @@ module Faker
|
|
121
160
|
fetch('dnd.ranged_weapons')
|
122
161
|
end
|
123
162
|
|
124
|
-
|
125
|
-
#
|
163
|
+
##
|
164
|
+
# Produces a last name from Dungeons and Dragons.
|
126
165
|
#
|
127
|
-
# @
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
166
|
+
# @return [String]
|
167
|
+
#
|
168
|
+
# @example
|
169
|
+
# Faker::Games::DnD.title_name #=> "Corvus the Cunning"
|
170
|
+
#
|
171
|
+
# @faker.version next
|
172
|
+
def title_name
|
173
|
+
"#{fetch('dnd.name.first_name')} #{fetch('dnd.name.title')}"
|
132
174
|
end
|
133
175
|
end
|
134
176
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Movies
|
5
|
+
class Avatar < Base
|
6
|
+
class << self
|
7
|
+
##
|
8
|
+
# Produces a character from Avatar.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
# Faker::Movies::Avatar.character #=> "Jake Sully"
|
14
|
+
#
|
15
|
+
# @faker.version next
|
16
|
+
def character
|
17
|
+
fetch('avatar.characters')
|
18
|
+
end
|
19
|
+
|
20
|
+
##
|
21
|
+
# Produces a date from Avatar.
|
22
|
+
#
|
23
|
+
# @return [String]
|
24
|
+
#
|
25
|
+
# @example
|
26
|
+
# Faker::Movies::Avatar.date #=> "December 15, 2022"
|
27
|
+
#
|
28
|
+
# @faker.version next
|
29
|
+
def date
|
30
|
+
fetch('avatar.dates')
|
31
|
+
end
|
32
|
+
|
33
|
+
##
|
34
|
+
# Produces a quote from Avatar.
|
35
|
+
#
|
36
|
+
# @return [String]
|
37
|
+
#
|
38
|
+
# @example
|
39
|
+
# Faker::Movies::Avatar.quote
|
40
|
+
# #=> "If it ain't raining, we ain't training."
|
41
|
+
#
|
42
|
+
# @faker.version next
|
43
|
+
def quote
|
44
|
+
fetch('avatar.quotes')
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
data/lib/faker/quotes/quote.rb
CHANGED
@@ -106,6 +106,19 @@ module Faker
|
|
106
106
|
def fortune_cookie
|
107
107
|
fetch('quote.fortune_cookie')
|
108
108
|
end
|
109
|
+
|
110
|
+
##
|
111
|
+
# Produces a quote from comedian Mitch Hedberg.
|
112
|
+
#
|
113
|
+
# @return [String]
|
114
|
+
#
|
115
|
+
# @example
|
116
|
+
# Faker::Quote.mitch_hedberg # => "I like Kit-Kats, unless I'm with four or more people."
|
117
|
+
#
|
118
|
+
# @faker.version next
|
119
|
+
def mitch_hedberg
|
120
|
+
fetch('quote.mitch_hedberg')
|
121
|
+
end
|
109
122
|
end
|
110
123
|
end
|
111
124
|
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Sports
|
5
|
+
class Chess < Base
|
6
|
+
class << self
|
7
|
+
##
|
8
|
+
# Produces the name of a chess player name.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
# Faker::Sports::Chess.player #=> "Golden State Warriors"
|
14
|
+
#
|
15
|
+
# @faker.version next
|
16
|
+
def player
|
17
|
+
fetch('chess.players')
|
18
|
+
end
|
19
|
+
|
20
|
+
##
|
21
|
+
# Produces a long (alpha-3) ISO 3166 country code.
|
22
|
+
#
|
23
|
+
# @return [String]
|
24
|
+
#
|
25
|
+
# @example
|
26
|
+
# Faker::Chess.federation #=> "COL"
|
27
|
+
#
|
28
|
+
# @faker.version next
|
29
|
+
def federation
|
30
|
+
Faker::Address.country_code_long
|
31
|
+
end
|
32
|
+
|
33
|
+
def tournament
|
34
|
+
##
|
35
|
+
# Produces the name of a famous chess tournament name.
|
36
|
+
#
|
37
|
+
# @return [String]
|
38
|
+
#
|
39
|
+
# @example
|
40
|
+
# Faker::Chess.tournament #=> "Khanty-Mansisyk (Candidates Tournament)"
|
41
|
+
#
|
42
|
+
# @faker.version next
|
43
|
+
fetch('chess.tournaments')
|
44
|
+
end
|
45
|
+
|
46
|
+
def rating(from: 2000, to: 2900)
|
47
|
+
##
|
48
|
+
# Produces a rating between two provided values. Boundaries are inclusive.
|
49
|
+
#
|
50
|
+
# @param from [Numeric] The lowest number to include.
|
51
|
+
# @param to [Numeric] The highest number to include.
|
52
|
+
# @return [Numeric]
|
53
|
+
#
|
54
|
+
# @example
|
55
|
+
# Faker::Sports::Chess.rating #=> 2734
|
56
|
+
# Faker::Sports::Chess.rating(from: 2400, to: 2700) #=> 2580
|
57
|
+
#
|
58
|
+
# @faker.version next
|
59
|
+
Faker::Base.rand_in_range(from, to)
|
60
|
+
end
|
61
|
+
|
62
|
+
##
|
63
|
+
# Produces the name of a chess opening.
|
64
|
+
#
|
65
|
+
# @return [String]
|
66
|
+
#
|
67
|
+
# @example
|
68
|
+
# Faker::Sports::Chess.opening #=> "Giuoco Piano"
|
69
|
+
#
|
70
|
+
# @faker.version next
|
71
|
+
def opening
|
72
|
+
fetch('chess.openings')
|
73
|
+
end
|
74
|
+
|
75
|
+
##
|
76
|
+
# Produces a chess title.
|
77
|
+
#
|
78
|
+
# @return [String]
|
79
|
+
#
|
80
|
+
# @example
|
81
|
+
# Faker::Sports::Chess.title #=> "GM"
|
82
|
+
#
|
83
|
+
# @faker.version next
|
84
|
+
def title
|
85
|
+
fetch('chess.titles')
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
data/lib/faker/travel/airport.rb
CHANGED
@@ -19,8 +19,6 @@ module Faker
|
|
19
19
|
# @faker.version next
|
20
20
|
def name(size:, region:)
|
21
21
|
fetch("airport.#{region}.#{size}")
|
22
|
-
rescue I18n::MissingTranslationData
|
23
|
-
p 'valid arguments are size && region -> US has size large medium small, EU has size large medium -- united_states || european_union'
|
24
22
|
end
|
25
23
|
|
26
24
|
##
|
@@ -38,8 +36,6 @@ module Faker
|
|
38
36
|
# @faker.version next
|
39
37
|
def iata(size:, region:)
|
40
38
|
fetch("airport.#{region}.iata_code.#{size}")
|
41
|
-
rescue I18n::MissingTranslationData
|
42
|
-
p 'valid arguments are size && region -> US has size large medium small, EU has size large medium -- united_states || european_union'
|
43
39
|
end
|
44
40
|
end
|
45
41
|
end
|
data/lib/faker/version.rb
CHANGED
data/lib/faker.rb
CHANGED