faker 3.1.0 → 3.2.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +107 -5
- data/README.md +13 -2
- 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/lorem.rb +18 -13
- 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/default/vehicle.rb +0 -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 +43 -0
- 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/airport.yml +381 -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/star_wars.yml +1 -1
- 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 +2 -1
- 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 +2 -1
- data/lib/locales/vi.yml +1 -0
- data/lib/locales/zh-CN.yml +1 -0
- data/lib/locales/zh-TW.yml +1 -0
- metadata +25 -19
- data/lib/faker/default/fillmurray.rb +0 -36
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,107 @@
|
|
|
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
|
+
|
|
66
|
+
## [v3.1.1](https://github.com/faker-ruby/faker/tree/v3.1.1) (2023-02-03)
|
|
67
|
+
|
|
68
|
+
Happy Valentine's Day with a new Faker release! 🎉
|
|
69
|
+
|
|
70
|
+
This version:
|
|
71
|
+
|
|
72
|
+
- adds and deprecates generators
|
|
73
|
+
- fixes bugs
|
|
74
|
+
- updates development dependencies
|
|
75
|
+
|
|
76
|
+
### Features
|
|
77
|
+
* Add exclude_words keyword to Lorem Ipsum to prevent words from being produced by @philipfong in #2665
|
|
78
|
+
* Deprecate FillMurray service by @ferblape in #2657
|
|
79
|
+
* Airports by @ZionMiller in https://github.com/faker-ruby/faker/pull/2682
|
|
80
|
+
|
|
81
|
+
### Bug fixes
|
|
82
|
+
* Fix simple typo in es.yml by @hslzr in https://github.com/faker-ruby/faker/pull/2675
|
|
83
|
+
* Test the Vehicle VIN validator with known good and bad values, fixes … by @alextaujenis in https://github.com/faker-ruby/faker/pull/2640
|
|
84
|
+
* Fix you're/your typo and inaccuracy in Star Wars quote by @dwilsonactual in https://github.com/faker-ruby/faker/pull/2693
|
|
85
|
+
* Revert "Typo in Ukrainian locale, fixes #2620" by @thdaraujo in https://github.com/faker-ruby/faker/pull/2690
|
|
86
|
+
|
|
87
|
+
### Update local dependencies
|
|
88
|
+
* Adds Ruby 3.2 to the CI matrix. Updates checkout action version. by @petergoldstein in https://github.com/faker-ruby/faker/pull/2673
|
|
89
|
+
* Update rubocop-minitest requirement from = 0.25.0 to = 0.25.1 by @dependabot in https://github.com/faker-ruby/faker/pull/2674
|
|
90
|
+
* Update minitest requirement from = 5.16.3 to = 5.17.0 by @dependabot in https://github.com/faker-ruby/faker/pull/2677
|
|
91
|
+
* Update pry requirement from = 0.14.1 to = 0.14.2 by @dependabot in https://github.com/faker-ruby/faker/pull/2680
|
|
92
|
+
* Update simplecov requirement from = 0.21.2 to = 0.22.0 by @dependabot in https://github.com/faker-ruby/faker/pull/2672
|
|
93
|
+
* Update rubocop requirement from = 1.44.0 to = 1.44.1 by @dependabot in https://github.com/faker-ruby/faker/pull/2691
|
|
94
|
+
|
|
95
|
+
### New Contributors
|
|
96
|
+
* @hslzr made their first contribution in https://github.com/faker-ruby/faker/pull/2675
|
|
97
|
+
* @ferblape made their first contribution in https://github.com/faker-ruby/faker/pull/2657
|
|
98
|
+
* @petergoldstein made their first contribution in https://github.com/faker-ruby/faker/pull/2673
|
|
99
|
+
* @dwilsonactual made their first contribution in https://github.com/faker-ruby/faker/pull/2693
|
|
100
|
+
|
|
101
|
+
**Full Changelog**: https://github.com/faker-ruby/faker/compare/v3.1.0...v3.1.1
|
|
102
|
+
|
|
103
|
+
------------------------------------------------------------------------------
|
|
104
|
+
|
|
3
105
|
## [v3.1.0](https://github.com/faker-ruby/faker/tree/v3.1.0) (2022-12-23)
|
|
4
106
|
|
|
5
107
|
Happy Holidays with a new Faker release! 🎉
|
|
@@ -10,13 +112,13 @@ This version:
|
|
|
10
112
|
- fixes bugs
|
|
11
113
|
- updates dependencies
|
|
12
114
|
|
|
13
|
-
|
|
115
|
+
### Features
|
|
14
116
|
* Simple Japanesemedia::CowboyBebop module by @Ivan-P23994 in https://github.com/faker-ruby/faker/pull/2617
|
|
15
117
|
* added travel folder and airports by @ZionMiller in https://github.com/faker-ruby/faker/pull/2601
|
|
16
118
|
* Spongebob TV show collections by @kleinjm in https://github.com/faker-ruby/faker/pull/2619
|
|
17
119
|
* Add pre-push hook example by @akanshak984 in https://github.com/faker-ruby/faker/pull/2606
|
|
18
120
|
|
|
19
|
-
|
|
121
|
+
### Bug fixes
|
|
20
122
|
* fix: ensure generated passwords have correct characters when mix_case & special_characters enabled by @tiff-o in https://github.com/faker-ruby/faker/pull/2533
|
|
21
123
|
* Fix: ensure sport generator produces single sport unless a number of sports is requested by @si-lens in https://github.com/faker-ruby/faker/pull/2616
|
|
22
124
|
* Remove typo in ISSUE_TEMPLATE to check Faker version by @loqimean in https://github.com/faker-ruby/faker/pull/2621
|
|
@@ -24,7 +126,7 @@ This version:
|
|
|
24
126
|
* Remove english characters in ja locale file, fixes faker-ruby#2637 by @alextaujenis in https://github.com/faker-ruby/faker/pull/2638
|
|
25
127
|
* Fix country code length for non EN locale by @vbrazo in https://github.com/faker-ruby/faker/pull/2669
|
|
26
128
|
|
|
27
|
-
|
|
129
|
+
### What's Changed
|
|
28
130
|
* Removed LoremPixel Files by @uzorjchibuzor in https://github.com/faker-ruby/faker/pull/2664
|
|
29
131
|
* Document IBAN digits validity generator by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2625
|
|
30
132
|
* Create random vehicle vin numbers with the correct check-digit by @alextaujenis in https://github.com/faker-ruby/faker/pull/2633
|
|
@@ -38,14 +140,14 @@ This version:
|
|
|
38
140
|
* Update README and CONTRIBUTING guides by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2630
|
|
39
141
|
* Update dependabot ignore list by @stefannibrasil in https://github.com/faker-ruby/faker/pull/2629
|
|
40
142
|
|
|
41
|
-
|
|
143
|
+
### Update local dependencies
|
|
42
144
|
* Update simplecov requirement from = 0.21.0 to = 0.21.2 by @dependabot in https://github.com/faker-ruby/faker/pull/2636
|
|
43
145
|
* Update timecop requirement from = 0.9.5 to = 0.9.6 by @dependabot in https://github.com/faker-ruby/faker/pull/2642
|
|
44
146
|
* Update rubocop-minitest requirement from = 0.23.2 to = 0.25.0 by @dependabot in https://github.com/faker-ruby/faker/pull/2653
|
|
45
147
|
* Update test-unit requirement from = 3.5.6 to = 3.5.7 by @dependabot in https://github.com/faker-ruby/faker/pull/2659
|
|
46
148
|
* Update rubocop requirement from = 1.41.0 to = 1.41.1 by @dependabot in https://github.com/faker-ruby/faker/pull/2667
|
|
47
149
|
|
|
48
|
-
|
|
150
|
+
### New Contributors
|
|
49
151
|
* @si-lens made their first contribution in https://github.com/faker-ruby/faker/pull/2616
|
|
50
152
|
* @Ivan-P23994 made their first contribution in https://github.com/faker-ruby/faker/pull/2617
|
|
51
153
|
* @ZionMiller made their first contribution in https://github.com/faker-ruby/faker/pull/2601
|
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)
|
|
@@ -318,6 +321,12 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
|
318
321
|
- [Faker::Fantasy::Tolkien](doc/fantasy/tolkien.md)
|
|
319
322
|
</details>
|
|
320
323
|
|
|
324
|
+
<details>
|
|
325
|
+
<summary>Travel</summary>
|
|
326
|
+
|
|
327
|
+
- [Faker:Travel::Airport](doc/travel/airport.md)
|
|
328
|
+
</details>
|
|
329
|
+
|
|
321
330
|
<details>
|
|
322
331
|
<summary>Creature</summary>
|
|
323
332
|
|
|
@@ -374,6 +383,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
|
374
383
|
<summary>Movies</summary>
|
|
375
384
|
|
|
376
385
|
- [Faker::Movie](doc/movies/movie.md)
|
|
386
|
+
- [Faker::Movies::Avatar](doc/movies/avatar.md)
|
|
377
387
|
- [Faker::Movies::BackToTheFuture](doc/movies/back_to_the_future.md)
|
|
378
388
|
- [Faker::Movies::Departed](doc/movies/departed.md)
|
|
379
389
|
- [Faker::Movies::Ghostbusters](doc/movies/ghostbusters.md)
|
|
@@ -418,6 +428,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main
|
|
|
418
428
|
|
|
419
429
|
- [Faker::Sports](doc/sports/sports.md)
|
|
420
430
|
- [Faker::Sports::Basketball](doc/sports/basketball.md)
|
|
431
|
+
- [Faker::Sports::Chess](doc/sports/chess.md)
|
|
421
432
|
- [Faker::Sports::Football](doc/sports/football.md)
|
|
422
433
|
- [Faker::Sports::Mountaineering](doc/sports/mountaineering.md)
|
|
423
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
|
#
|
data/lib/faker/default/lorem.rb
CHANGED
|
@@ -28,14 +28,19 @@ module Faker
|
|
|
28
28
|
# Faker::Lorem.words #=> ["hic", "quia", "nihil"]
|
|
29
29
|
# Faker::Lorem.words(number: 4) #=> ["est", "temporibus", "et", "quaerat"]
|
|
30
30
|
# Faker::Lorem.words(number: 4, supplemental: true) #=> ["nisi", "sit", "allatus", "consequatur"]
|
|
31
|
+
# Faker::Lorem.words(number: 4, supplemental: true, exclude_words: 'sit') #=> ["nisi", "allatus", "consequatur", "aut"]
|
|
31
32
|
#
|
|
32
33
|
# @faker.version 2.1.3
|
|
33
|
-
def words(number: 3, supplemental: false)
|
|
34
|
+
def words(number: 3, supplemental: false, exclude_words: nil)
|
|
34
35
|
resolved_num = resolve(number)
|
|
35
36
|
word_list = (
|
|
36
37
|
translate('faker.lorem.words') +
|
|
37
38
|
(supplemental ? translate('faker.lorem.supplemental') : [])
|
|
38
39
|
)
|
|
40
|
+
if exclude_words
|
|
41
|
+
exclude_words = exclude_words.split(', ') if exclude_words.instance_of?(::String)
|
|
42
|
+
word_list -= exclude_words
|
|
43
|
+
end
|
|
39
44
|
word_list *= ((resolved_num / word_list.length) + 1)
|
|
40
45
|
shuffle(word_list)[0, resolved_num]
|
|
41
46
|
end
|
|
@@ -103,8 +108,8 @@ module Faker
|
|
|
103
108
|
# Faker::Lorem.sentence(word_count: 5, supplemental: true, random_words_to_add:2) #=> "Crinis quo cruentus velit animi vomer."
|
|
104
109
|
#
|
|
105
110
|
# @faker.version 2.1.3
|
|
106
|
-
def sentence(word_count: 4, supplemental: false, random_words_to_add: 0)
|
|
107
|
-
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental).join(locale_space).capitalize + locale_period
|
|
111
|
+
def sentence(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
|
112
|
+
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space).capitalize + locale_period
|
|
108
113
|
end
|
|
109
114
|
|
|
110
115
|
##
|
|
@@ -121,8 +126,8 @@ module Faker
|
|
|
121
126
|
# Faker::Lorem.sentences(number: 2, supplemental: true) #=> ["Cito cena ad.", "Solvo animus allatus."]
|
|
122
127
|
#
|
|
123
128
|
# @faker.version 2.1.3
|
|
124
|
-
def sentences(number: 3, supplemental: false)
|
|
125
|
-
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental) }
|
|
129
|
+
def sentences(number: 3, supplemental: false, exclude_words: nil)
|
|
130
|
+
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
126
131
|
end
|
|
127
132
|
|
|
128
133
|
##
|
|
@@ -145,8 +150,8 @@ module Faker
|
|
|
145
150
|
# #=> "Texo tantillus tamisium. Tribuo amissio tamisium. Facere aut canis."
|
|
146
151
|
#
|
|
147
152
|
# @faker.version 2.1.3
|
|
148
|
-
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 0)
|
|
149
|
-
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental).join(locale_space)
|
|
153
|
+
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 0, exclude_words: nil)
|
|
154
|
+
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space)
|
|
150
155
|
end
|
|
151
156
|
|
|
152
157
|
##
|
|
@@ -163,8 +168,8 @@ module Faker
|
|
|
163
168
|
# Faker::Lorem.paragraphs(number:2, supplemental: true)
|
|
164
169
|
#
|
|
165
170
|
# @faker.version 2.1.3
|
|
166
|
-
def paragraphs(number: 3, supplemental: false)
|
|
167
|
-
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental) }
|
|
171
|
+
def paragraphs(number: 3, supplemental: false, exclude_words: nil)
|
|
172
|
+
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
168
173
|
end
|
|
169
174
|
|
|
170
175
|
##
|
|
@@ -205,8 +210,8 @@ module Faker
|
|
|
205
210
|
# Faker::Lorem.question(word_count: 2, supplemental: true, random_words_to_add: 2) #=> "Depulso uter ut?"
|
|
206
211
|
#
|
|
207
212
|
# @faker.version 2.1.3
|
|
208
|
-
def question(word_count: 4, supplemental: false, random_words_to_add: 0)
|
|
209
|
-
words(number: word_count + rand(random_words_to_add), supplemental: supplemental).join(' ').capitalize + locale_question_mark
|
|
213
|
+
def question(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
|
214
|
+
words(number: word_count + rand(random_words_to_add), supplemental: supplemental, exclude_words: exclude_words).join(' ').capitalize + locale_question_mark
|
|
210
215
|
end
|
|
211
216
|
|
|
212
217
|
##
|
|
@@ -223,8 +228,8 @@ module Faker
|
|
|
223
228
|
# Faker::Lorem.questions(number: 2, supplemental: true) #=> ["Acceptus subito cetera?", "Aro sulum cubicularis?"]
|
|
224
229
|
#
|
|
225
230
|
# @faker.version 2.1.3
|
|
226
|
-
def questions(number: 3, supplemental: false)
|
|
227
|
-
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental) }
|
|
231
|
+
def questions(number: 3, supplemental: false, exclude_words: nil)
|
|
232
|
+
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
228
233
|
end
|
|
229
234
|
|
|
230
235
|
private
|
|
@@ -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
|
|
|
@@ -9,7 +9,6 @@ module Faker
|
|
|
9
9
|
VIN_KEYSPACE = %w[A B C D E F G H J K L M N P R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9].freeze
|
|
10
10
|
VIN_TRANSLITERATION = { A: 1, B: 2, C: 3, D: 4, E: 5, F: 6, G: 7, H: 8, J: 1, K: 2, L: 3, M: 4, N: 5, P: 7, R: 9, S: 2, T: 3, U: 4, V: 5, W: 6, X: 7, Y: 8, Z: 9 }.freeze
|
|
11
11
|
VIN_WEIGHT = [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2].freeze
|
|
12
|
-
VIN_REGEX = /\A[A-HJ-NPR-Z0-9]{17}\z/.freeze
|
|
13
12
|
SG_CHECKSUM_WEIGHTS = [3, 14, 2, 12, 2, 11, 1].freeze
|
|
14
13
|
SG_CHECKSUM_CHARS = 'AYUSPLJGDBZXTRMKHEC'
|
|
15
14
|
|
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
|