faker 2.15.1 → 3.4.2
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 +848 -34
- data/README.md +225 -103
- data/lib/faker/blockchain/aeternity.rb +1 -1
- data/lib/faker/blockchain/bitcoin.rb +2 -2
- data/lib/faker/blockchain/ethereum.rb +1 -1
- data/lib/faker/blockchain/tezos.rb +31 -3
- data/lib/faker/books/dune.rb +2 -10
- data/lib/faker/books/lovecraft.rb +9 -41
- data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
- data/lib/faker/creature/bird.rb +203 -0
- data/lib/faker/default/address.rb +7 -27
- data/lib/faker/default/alphanumeric.rb +2 -8
- data/lib/faker/default/app.rb +1 -10
- data/lib/faker/default/avatar.rb +1 -12
- data/lib/faker/default/bank.rb +25 -17
- data/lib/faker/default/barcode.rb +33 -22
- data/lib/faker/default/boolean.rb +1 -4
- data/lib/faker/default/cannabis.rb +10 -0
- data/lib/faker/default/chile_rut.rb +25 -25
- data/lib/faker/default/chuck_norris.rb +1 -0
- data/lib/faker/default/code.rb +71 -42
- data/lib/faker/default/color.rb +77 -6
- data/lib/faker/default/commerce.rb +31 -17
- data/lib/faker/default/company.rb +137 -22
- data/lib/faker/default/crypto.rb +26 -4
- data/lib/faker/default/crypto_coin.rb +3 -15
- data/lib/faker/default/date.rb +65 -42
- data/lib/faker/default/demographic.rb +1 -5
- data/lib/faker/default/driving_licence.rb +20 -18
- data/lib/faker/default/drone.rb +1 -1
- data/lib/faker/default/educator.rb +13 -0
- data/lib/faker/default/emotion.rb +33 -0
- data/lib/faker/default/file.rb +5 -22
- data/lib/faker/default/finance.rb +30 -7
- data/lib/faker/default/food.rb +27 -1
- data/lib/faker/default/hipster.rb +8 -48
- data/lib/faker/default/hobby.rb +22 -0
- data/lib/faker/default/html.rb +230 -0
- data/lib/faker/default/id_number.rb +175 -27
- data/lib/faker/default/internet.rb +333 -114
- data/lib/faker/default/invoice.rb +4 -17
- data/lib/faker/default/json.rb +4 -21
- data/lib/faker/default/lorem.rb +175 -73
- data/lib/faker/default/lorem_flickr.rb +4 -37
- data/lib/faker/default/markdown.rb +10 -13
- data/lib/faker/default/marketing.rb +1 -1
- data/lib/faker/default/measurement.rb +16 -48
- data/lib/faker/default/name.rb +1 -5
- data/lib/faker/default/nation.rb +0 -3
- data/lib/faker/default/{nhs.rb → national_health_service.rb} +9 -8
- data/lib/faker/default/number.rb +33 -61
- data/lib/faker/default/omniauth.rb +55 -52
- data/lib/faker/default/phone_number.rb +36 -21
- data/lib/faker/default/placeholdit.rb +10 -20
- data/lib/faker/default/relationship.rb +1 -5
- data/lib/faker/default/religion.rb +6 -0
- data/lib/faker/default/science.rb +108 -0
- data/lib/faker/default/source.rb +3 -16
- data/lib/faker/default/south_africa.rb +3 -3
- data/lib/faker/default/string.rb +1 -7
- data/lib/faker/default/stripe.rb +4 -20
- data/lib/faker/default/tea.rb +41 -0
- data/lib/faker/{music/show.rb → default/theater.rb} +11 -8
- data/lib/faker/default/time.rb +4 -34
- data/lib/faker/default/twitter.rb +7 -23
- data/lib/faker/default/types.rb +12 -34
- data/lib/faker/default/vehicle.rb +44 -54
- data/lib/faker/default/vulnerability_identifier.rb +23 -0
- data/lib/faker/default/world_cup.rb +2 -11
- data/lib/faker/games/clash_of_clans.rb +1 -1
- data/lib/faker/games/dnd.rb +49 -7
- data/lib/faker/games/dota.rb +14 -5
- data/lib/faker/games/final_fantasy_xiv.rb +73 -0
- data/lib/faker/games/minecraft.rb +1 -1
- data/lib/faker/games/myst.rb +1 -1
- data/lib/faker/games/tarkov.rb +205 -0
- data/lib/faker/games/touhou.rb +75 -0
- data/lib/faker/games/witcher.rb +39 -0
- data/lib/faker/japanese_media/cowboy_bebop.rb +61 -0
- data/lib/faker/japanese_media/fullmetal_alchemist_brotherhood.rb +51 -0
- data/lib/faker/japanese_media/kamen_rider.rb +102 -0
- data/lib/faker/japanese_media/one_piece.rb +1 -1
- data/lib/faker/locations/australia.rb +52 -0
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/movies/hackers.rb +48 -0
- data/lib/faker/movies/star_wars.rb +73 -5
- data/lib/faker/movies/{room.rb → the_room.rb} +4 -4
- data/lib/faker/movies/tron.rb +161 -0
- data/lib/faker/music/hiphop.rb +3 -3
- data/lib/faker/music/music.rb +12 -0
- data/lib/faker/music/rock_band.rb +12 -0
- data/lib/faker/music/smashing_pumpkins.rb +64 -0
- data/lib/faker/quotes/quote.rb +13 -0
- data/lib/faker/quotes/rajnikanth.rb +1 -0
- data/lib/faker/quotes/shakespeare.rb +34 -0
- data/lib/faker/religion/bible.rb +50 -0
- data/lib/faker/sports/chess.rb +90 -0
- data/lib/faker/sports/mountaineering.rb +22 -0
- data/lib/faker/sports/sport.rb +116 -0
- data/lib/faker/travel/airport.rb +43 -0
- data/lib/faker/travel/train_station.rb +54 -0
- data/lib/faker/tv_shows/archer.rb +51 -0
- data/lib/faker/tv_shows/big_bang_theory.rb +1 -1
- data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
- data/lib/faker/tv_shows/michael_scott.rb +0 -3
- data/lib/faker/tv_shows/south_park.rb +15 -0
- data/lib/faker/tv_shows/spongebob.rb +50 -0
- data/lib/faker/tv_shows/suits.rb +1 -1
- data/lib/faker/tv_shows/supernatural.rb +48 -0
- data/lib/faker/tv_shows/the_office.rb +37 -0
- data/lib/faker/version.rb +2 -2
- data/lib/faker.rb +26 -67
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/deprecator.rb +53 -0
- data/lib/helpers/positional_generator.rb +480 -0
- data/lib/helpers/unique_generator.rb +13 -14
- data/lib/locales/README.md +18 -2
- data/lib/locales/ar.yml +6 -1
- data/lib/locales/bg.yml +1 -2
- data/lib/locales/da-DK.yml +529 -35
- data/lib/locales/de-AT.yml +3487 -27
- data/lib/locales/de-CH.yml +4328 -12
- data/lib/locales/de.yml +7185 -99
- data/lib/locales/ee.yml +0 -1
- data/lib/locales/en/address.yml +1826 -562
- data/lib/locales/en/airport.yml +381 -0
- data/lib/locales/en/animal.yml +1 -1
- data/lib/locales/en/archer.yml +75 -0
- data/lib/locales/en/australia.yml +108 -0
- data/lib/locales/en/avatar.yml +31 -0
- data/lib/locales/en/bank.yml +1 -1
- data/lib/locales/en/bible.yml +90 -0
- data/lib/locales/en/bird.yml +1281 -0
- data/lib/locales/en/book.yml +487 -3
- data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
- data/lib/locales/en/cat.yml +1 -1
- data/lib/locales/en/chess.yml +103 -0
- data/lib/locales/en/coffee.yml +1 -1
- data/lib/locales/en/commerce.yml +17 -0
- data/lib/locales/en/community.yml +17 -17
- data/lib/locales/en/company.yml +1 -0
- data/lib/locales/en/computer.yml +23 -4
- data/lib/locales/en/cowboy_bebop.yml +163 -0
- data/lib/locales/en/device.yml +112 -4
- data/lib/locales/en/dnd.yml +186 -1
- data/lib/locales/en/dog.yml +262 -7
- data/lib/locales/en/dota.yml +173 -0
- data/lib/locales/en/dune.yml +266 -397
- data/lib/locales/en/educator.yml +6 -0
- data/lib/locales/en/emotion.yml +480 -0
- data/lib/locales/en/file.yml +9 -1
- data/lib/locales/en/final_fantasy_xiv.yml +754 -0
- data/lib/locales/en/finance.yml +27 -4
- data/lib/locales/en/food.yml +1067 -10
- data/lib/locales/en/football.yml +3 -3
- data/lib/locales/en/fullmetal_alchemist_brotherhood.yml +78 -0
- data/lib/locales/en/game.yml +11 -0
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/harry_potter.yml +1 -1
- data/lib/locales/en/heroes.yml +2 -2
- data/lib/locales/en/hobby.yml +171 -0
- data/lib/locales/en/horse.yml +2 -2
- data/lib/locales/en/id_number.yml +1 -1
- data/lib/locales/en/internet.yml +136 -3
- data/lib/locales/en/kamen_rider.yml +452 -0
- data/lib/locales/en/kpop.yml +7 -7
- data/lib/locales/en/lebowski.yml +1 -1
- data/lib/locales/en/lovecraft.yml +76 -6
- data/lib/locales/en/minecraft.yml +4 -4
- data/lib/locales/en/mitch_hedberg.yml +46 -0
- data/lib/locales/en/mountain.yml +14 -1
- data/lib/locales/en/mountaineering.yml +14 -0
- data/lib/locales/en/movie.yml +2 -1
- data/lib/locales/en/music.yml +152 -142
- data/lib/locales/en/naruto.yml +2 -3
- data/lib/locales/en/one_piece.yml +1 -1
- data/lib/locales/en/opera.yml +2 -2
- data/lib/locales/en/overwatch.yml +5 -7
- data/lib/locales/en/phone_number.yml +78 -3
- data/lib/locales/en/rock_band.yml +1 -0
- data/lib/locales/en/science.yml +481 -3
- data/lib/locales/en/shakespeare.yml +21 -24
- data/lib/locales/en/smashing_pumpkins.yml +382 -0
- data/lib/locales/en/source.yml +5 -0
- data/lib/locales/en/south_park.yml +360 -2
- data/lib/locales/en/space.yml +1 -1
- data/lib/locales/en/spongebob.yml +489 -0
- data/lib/locales/en/sport.yml +130 -0
- data/lib/locales/en/star_wars.yml +1 -1
- data/lib/locales/en/stranger_thing.yml +1 -1
- data/lib/locales/en/super_smash_bros.yml +7 -2
- data/lib/locales/en/supernatural.yml +141 -0
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en/tea.yml +172 -0
- data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
- data/lib/locales/en/the_office.yml +86 -0
- data/lib/locales/en/{room.yml → the_room.yml} +1 -1
- data/lib/locales/en/{show.yml → theater.yml} +1 -1
- data/lib/locales/en/touhou.yml +839 -0
- data/lib/locales/en/train_station.yml +280 -0
- data/lib/locales/en/tron.yml +227 -0
- data/lib/locales/en/vehicle.yml +2809 -75
- data/lib/locales/en/witcher.yml +37 -0
- data/lib/locales/en-AU.yml +718 -47
- data/lib/locales/en-CA.yml +373 -18
- data/lib/locales/en-GB.yml +116 -8
- data/lib/locales/en-IND.yml +1259 -17
- data/lib/locales/en-KE.yml +212 -0
- data/lib/locales/en-MS.yml +364 -17
- data/lib/locales/en-NEP.yml +212 -38
- data/lib/locales/en-NG.yml +1 -0
- data/lib/locales/en-NZ.yml +1153 -123
- data/lib/locales/en-PAK.yml +369 -10
- data/lib/locales/en-SG.yml +581 -16
- data/lib/locales/en-UG.yml +1 -0
- data/lib/locales/en-US.yml +6914 -74
- data/lib/locales/en-ZA.yml +1 -1
- data/lib/locales/en-au-ocker.yml +266 -22
- data/lib/locales/es-AR.yml +4570 -0
- data/lib/locales/es-MX.yml +1 -2
- data/lib/locales/es.yml +2 -3
- data/lib/locales/fi-FI.yml +3 -1
- data/lib/locales/fr/address.yml +20 -0
- data/lib/locales/fr/adjective.yml +266 -0
- data/lib/locales/fr/ancient.yml +141 -0
- data/lib/locales/fr/animal.yml +5 -0
- data/lib/locales/fr/appliance.yml +4 -0
- data/lib/locales/fr/book.yml +7 -0
- data/lib/locales/fr/color.yml +4 -0
- data/lib/locales/fr/company.yml +17 -0
- data/lib/locales/fr/compass.yml +23 -0
- data/lib/locales/fr/demographic.yml +4 -0
- data/lib/locales/fr/gender.yml +6 -0
- data/lib/locales/fr/internet.yml +4 -0
- data/lib/locales/fr/lorem.yml +5 -0
- data/lib/locales/fr/measurement.yml +7 -0
- data/lib/locales/fr/name.yml +22 -0
- data/lib/locales/fr/phone_number.yml +7 -0
- data/lib/locales/fr/pokemon.yml +7 -0
- data/lib/locales/fr-CA.yml +2733 -44
- data/lib/locales/fr-CH.yml +1 -2
- data/lib/locales/fr.yml +2 -118
- data/lib/locales/hy.yml +3624 -119
- data/lib/locales/id.yml +839 -12
- data/lib/locales/it.yml +1304 -32
- data/lib/locales/ja/README.md +13 -0
- data/lib/locales/ja/address.yml +120539 -0
- data/lib/locales/ja/adjective.yml +148 -0
- data/lib/locales/ja/ancient.yml +4 -0
- data/lib/locales/ja/animal.yml +5 -0
- data/lib/locales/ja/bank.yml +4 -0
- data/lib/locales/ja/book.yml +7 -0
- data/lib/locales/ja/cat.yml +5 -0
- data/lib/locales/ja/coffee.yml +4 -0
- data/lib/locales/ja/color.yml +4 -0
- data/lib/locales/ja/commerce.yml +11 -0
- data/lib/locales/ja/company.yml +8 -0
- data/lib/locales/ja/dog.yml +6 -0
- data/lib/locales/ja/emotion.yml +51 -0
- data/lib/locales/ja/food.yml +4 -0
- data/lib/locales/ja/football.yml +115 -0
- data/lib/locales/ja/gender.yml +4 -0
- data/lib/locales/ja/lorem.yml +9 -0
- data/lib/locales/ja/name.yml +13 -0
- data/lib/locales/ja/naruto.yml +230 -0
- data/lib/locales/ja/overwatch.yml +5 -0
- data/lib/locales/ja/phone_number.yml +7 -0
- data/lib/locales/ja/pokemon.yml +7 -0
- data/lib/locales/ja/relationship.yml +10 -0
- data/lib/locales/ja/restaurant.yml +11 -0
- data/lib/locales/ja/space.yml +5 -0
- data/lib/locales/ja/sport.yml +130 -0
- data/lib/locales/ja/studio_ghibli.yml +112 -0
- data/lib/locales/ja/subscription.yml +8 -0
- data/lib/locales/ja/super_mario.yml +9 -0
- data/lib/locales/ja/super_smash_bros.yml +8 -0
- data/lib/locales/ja/touhou.yml +466 -0
- data/lib/locales/ja/university.yml +9 -0
- data/lib/locales/ja/zelda.yml +5 -0
- data/lib/locales/ko.yml +1361 -20
- data/lib/locales/lt.yml +315 -0
- data/lib/locales/lv.yml +1 -2
- data/lib/locales/mi-NZ.yml +283 -0
- data/lib/locales/nb-NO.yml +518 -29
- data/lib/locales/nl.yml +1 -1
- data/lib/locales/pl.yml +1 -2
- data/lib/locales/pt-BR.yml +8157 -660
- data/lib/locales/pt.yml +844 -45
- data/lib/locales/ru.yml +1355 -32
- data/lib/locales/sk.yml +4410 -43
- data/lib/locales/sv.yml +100 -0
- data/lib/locales/th.yml +76 -76
- data/lib/locales/tr.yml +1 -2
- data/lib/locales/uk.yml +1808 -44
- data/lib/locales/vi.yml +1 -0
- data/lib/locales/zh-CN/bank.yml +17 -0
- data/lib/locales/zh-CN.yml +1 -0
- data/lib/locales/zh-TW.yml +1 -0
- metadata +134 -133
- data/History.md +0 -176
- data/lib/faker/default/fillmurray.rb +0 -45
- data/lib/faker/default/lorem_pixel.rb +0 -69
- data/lib/locales/ja.yml +0 -105
- /data/lib/faker/default/{faker_adjective.rb → adjective.rb} +0 -0
data/README.md
CHANGED
|
@@ -1,78 +1,124 @@
|
|
|
1
|
-
|
|
2
1
|

|
|
3
2
|
|
|
4
3
|
# Faker
|
|
5
4
|
[](https://github.com/faker-ruby/faker/actions?query=workflow%3ATests)
|
|
6
5
|
[](https://badge.fury.io/rb/faker)
|
|
7
|
-
[](https://inch-ci.org/github/faker-ruby/faker)
|
|
8
7
|
[](https://codeclimate.com/github/stympy/faker/test_coverage)
|
|
9
8
|
[](https://codeclimate.com/github/stympy/faker/maintainability)
|
|
10
|
-
[](https://dependabot.com/compatibility-score.html?dependency-name=faker&package-manager=bundler&version-scheme=semver)
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
Faker is a port of [Perl's Data::Faker library](https://metacpan.org/pod/Data::Faker).
|
|
11
|
+
It's a library for generating fake data such as names, addresses, and phone numbers.
|
|
12
|
+
|
|
13
|
+
Faker helps you generate realistic test data, and populate your
|
|
14
|
+
database with more than a couple of records while you're doing development.
|
|
15
|
+
|
|
16
|
+
It comes in very handy for taking screenshots (taking screenshots for a personal project)
|
|
17
|
+
and it was the original impetus for the creation of this gem.
|
|
18
|
+
|
|
19
|
+
## Quick links
|
|
20
|
+
|
|
21
|
+
- 📖 **[Read the documentation for the latest version][rubydocs].**
|
|
22
|
+
- 📢 **[See what's changed in recent versions][changelog].**
|
|
23
|
+
|
|
24
|
+
[rubydocs]: https://www.rubydoc.info/gems/faker/
|
|
25
|
+
[changelog]: CHANGELOG.md
|
|
26
|
+
|
|
27
|
+
## In the media
|
|
28
|
+
|
|
29
|
+
- 📰 [With Great Humor Comes Great Developer Engagement] - KTH Royal Institute of Technology research
|
|
30
|
+
- 🎧 [Computer und Kommunikation 4.5.2024, komplette Sendung] - Deutschland Funk Radio Interview
|
|
31
|
+
|
|
32
|
+
[With Great Humor Comes Great Developer Engagement]: https://arxiv.org/pdf/2312.01680
|
|
33
|
+
[Computer und Kommunikation 4.5.2024, komplette Sendung]: https://www.deutschlandfunk.de/computer-und-kommunikation-4-5-2024-komplette-sendung-dlf-16492b03-100.html
|
|
13
34
|
|
|
14
|
-
|
|
15
|
-
project, [Catch the Best](http://catchthebest.com/) was the original impetus
|
|
16
|
-
for the creation of this gem), having real-looking test data, and having your
|
|
17
|
-
database populated with more than one or two records while you're doing
|
|
18
|
-
development.
|
|
35
|
+
## Table of Contents
|
|
19
36
|
|
|
20
37
|
- [Faker](#faker)
|
|
21
|
-
|
|
22
|
-
- [
|
|
38
|
+
- [Quick links](#quick-links)
|
|
39
|
+
- [Table of Contents](#table-of-contents)
|
|
40
|
+
- [Notes](#notes)
|
|
41
|
+
- [Getting Started](#getting-started)
|
|
23
42
|
- [Usage](#usage)
|
|
24
|
-
|
|
43
|
+
- [A note about the Generators versions](#a-note-about-the-generators-versions)
|
|
25
44
|
- [Ensuring unique values](#ensuring-unique-values)
|
|
26
45
|
- [Deterministic Random](#deterministic-random)
|
|
46
|
+
- [Customization](#customization)
|
|
47
|
+
- [Minitest and Faker \>= 2.22](#minitest-and-faker--222)
|
|
27
48
|
- [Generators](#generators)
|
|
28
|
-
- [Default](#default)
|
|
29
|
-
- [Blockchain](#blockchain)
|
|
30
|
-
- [Books](#books)
|
|
31
|
-
- [Creature](#creature)
|
|
32
|
-
- [Games](#games)
|
|
33
|
-
- [Japanese Media](#japanese-media)
|
|
34
|
-
- [Movies](#movies)
|
|
35
|
-
- [Music](#music)
|
|
36
|
-
- [Quotes](#quotes)
|
|
37
|
-
- [Sports](#sports)
|
|
38
|
-
- [Tv Shows](#tv-shows)
|
|
39
|
-
- [Customization](#customization)
|
|
40
49
|
- [Contributing](#contributing)
|
|
41
|
-
- [
|
|
50
|
+
- [Versioning](#versioning)
|
|
42
51
|
- [License](#license)
|
|
43
52
|
|
|
44
|
-
###
|
|
53
|
+
### Notes
|
|
54
|
+
|
|
45
55
|
* While Faker generates data at random, returned values are not guaranteed to be unique by default.
|
|
46
|
-
|
|
47
|
-
Values also can be deterministic if you use the deterministic feature, see [
|
|
48
|
-
* This is the `
|
|
49
|
-
Please refer the README of your version for the available methods.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
##
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
```
|
|
56
|
-
Note: if you are getting a `uninitialized constant Faker::[some_class]` error, your version of the gem is behind the one documented here. To make sure that your gem is the one documented here, change the line in your Gemfile to:
|
|
56
|
+
To explicitly specify when you require unique values, see [Ensuring Unique Values](#ensuring-unique-values).
|
|
57
|
+
Values also can be deterministic if you use the deterministic feature, see [Deterministic Random](#deterministic-random)
|
|
58
|
+
* This is the `main` branch of Faker and may contain changes that are not yet released.
|
|
59
|
+
Please refer to the README of your version for the available methods.
|
|
60
|
+
The list of all versions is [available here](https://github.com/stympy/faker/releases).
|
|
61
|
+
|
|
62
|
+
## Getting Started
|
|
63
|
+
|
|
64
|
+
Start by including `faker` in your Gemfile:
|
|
57
65
|
|
|
58
66
|
```ruby
|
|
59
|
-
gem 'faker'
|
|
67
|
+
gem 'faker'
|
|
60
68
|
```
|
|
61
69
|
|
|
70
|
+
Then run `bundle install`.
|
|
71
|
+
|
|
62
72
|
## Usage
|
|
73
|
+
|
|
74
|
+
Here are some examples of how to use Faker:
|
|
75
|
+
|
|
63
76
|
```ruby
|
|
64
77
|
require 'faker'
|
|
65
78
|
|
|
66
79
|
Faker::Name.name #=> "Christophe Bartell"
|
|
67
80
|
|
|
68
|
-
Faker::
|
|
81
|
+
Faker::Address.full_address #=> "5479 William Way, East Sonnyhaven, LA 63637"
|
|
82
|
+
|
|
83
|
+
Faker::Markdown.emphasis #=> "Quo qui aperiam. Amet corrupti distinctio. Sit quia *dolor.*"
|
|
84
|
+
|
|
85
|
+
Faker::TvShows::RuPaul.queen #=> "Violet Chachki"
|
|
86
|
+
|
|
87
|
+
Faker::Alphanumeric.alpha(number: 10) #=> "zlvubkrwga"
|
|
88
|
+
|
|
89
|
+
Faker::ProgrammingLanguage.name #=> "Ruby"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
For a complete list of the generators, see [Generators](#generators).
|
|
93
|
+
|
|
94
|
+
#### A note about the Generators versions
|
|
95
|
+
|
|
96
|
+
If you get a `uninitialized constant Faker::[some_class]` error, your version of
|
|
97
|
+
the gem is behind main.
|
|
98
|
+
|
|
99
|
+
To make sure that your gem is the one
|
|
100
|
+
documented here, change the line in your Gemfile to:
|
|
101
|
+
|
|
102
|
+
```ruby
|
|
103
|
+
gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main'
|
|
69
104
|
```
|
|
70
105
|
|
|
71
|
-
|
|
72
|
-
|
|
106
|
+
The generators have the `@faker.version` tag on top of their implementation.
|
|
107
|
+
From the tags, you can identify the version the generator was added:
|
|
108
|
+
|
|
109
|
+
```ruby
|
|
110
|
+
# Faker::TvShows::ParksAndRec.character
|
|
111
|
+
|
|
112
|
+
# @faker.version 1.9.0
|
|
113
|
+
def character
|
|
114
|
+
fetch('parks_and_rec.characters')
|
|
115
|
+
end
|
|
116
|
+
```
|
|
73
117
|
|
|
74
118
|
### Ensuring unique values
|
|
75
|
-
|
|
119
|
+
|
|
120
|
+
To ensure Faker generates unique values, prefix your method call with `unique`:
|
|
121
|
+
|
|
76
122
|
```ruby
|
|
77
123
|
Faker::Name.unique.name # This will return a unique name every time it is called
|
|
78
124
|
```
|
|
@@ -81,6 +127,7 @@ If too many unique values are requested from a generator that has a limited
|
|
|
81
127
|
number of potential values, a `Faker::UniqueGenerator::RetryLimitExceeded`
|
|
82
128
|
exception may be raised. It is possible to clear the record of unique values
|
|
83
129
|
that have been returned, for example between tests.
|
|
130
|
+
|
|
84
131
|
```ruby
|
|
85
132
|
Faker::Name.unique.clear # Clears used values for Faker::Name
|
|
86
133
|
Faker::UniqueGenerator.clear # Clears used values for all generators
|
|
@@ -99,7 +146,9 @@ Faker::Lorem.unique.exclude :string, [number: 6], %w[azerty wxcvbn]
|
|
|
99
146
|
```
|
|
100
147
|
|
|
101
148
|
### Deterministic Random
|
|
102
|
-
|
|
149
|
+
|
|
150
|
+
Faker supports seeding of its pseudo-random number generator (PRNG)
|
|
151
|
+
to provide deterministic output of repeated method calls.
|
|
103
152
|
|
|
104
153
|
```ruby
|
|
105
154
|
Faker::Config.random = Random.new(42)
|
|
@@ -114,14 +163,47 @@ Faker::Config.random.seed #=> 185180369676275068918401850258677722187
|
|
|
114
163
|
Faker::Company.bs #=> "cultivate viral synergies"
|
|
115
164
|
```
|
|
116
165
|
|
|
166
|
+
### Customization
|
|
167
|
+
|
|
168
|
+
You may want Faker to print information depending on your location in the world.
|
|
169
|
+
To assist you in this, Faker uses the `I18n` gem to store strings and formats to
|
|
170
|
+
represent the names and postal codes of the area of your choosing.
|
|
171
|
+
|
|
172
|
+
Just set the locale you want as shown below, and Faker will take care of the rest.
|
|
173
|
+
|
|
174
|
+
```ruby
|
|
175
|
+
Faker::Config.locale = 'es'
|
|
176
|
+
# or
|
|
177
|
+
Faker::Config.locale = :es
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
To override Faker's locales, and set it on threaded server environments
|
|
181
|
+
check out the [locales README](lib/locales/README.md).
|
|
182
|
+
|
|
183
|
+
### Minitest and Faker >= 2.22
|
|
184
|
+
|
|
185
|
+
To prevent Faker (version >= 2.22) from generating duplicate values when using Minitest,
|
|
186
|
+
you might need to add the following to the `test_helper.rb` or `rails_helper.rb` file:
|
|
187
|
+
|
|
188
|
+
```ruby
|
|
189
|
+
Faker::Config.random = Random.new
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
See [Issue #2534](https://github.com/faker-ruby/faker/issues/2534) for more details.
|
|
193
|
+
|
|
117
194
|
## Generators
|
|
195
|
+
|
|
196
|
+
This is the full list of generators available with this gem. If you need details about any of them, make sure to consult the documentation.
|
|
197
|
+
|
|
118
198
|
**NOTE: Some of the generators below aren't released yet. If you want to use them, change the line in your gemfile to:**
|
|
119
199
|
|
|
120
200
|
```ruby
|
|
121
|
-
gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => '
|
|
201
|
+
gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main'
|
|
122
202
|
```
|
|
123
203
|
|
|
124
|
-
|
|
204
|
+
<details>
|
|
205
|
+
<summary>Default</summary>
|
|
206
|
+
|
|
125
207
|
- [Faker::Address](doc/default/address.md)
|
|
126
208
|
- [Faker::Alphanumeric](doc/default/alphanumeric.md)
|
|
127
209
|
- [Faker::Ancient](doc/default/ancient.md)
|
|
@@ -136,6 +218,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
136
218
|
- [Faker::Boolean](doc/default/boolean.md)
|
|
137
219
|
- [Faker::BossaNova](doc/default/bossa_nova.md)
|
|
138
220
|
- [Faker::Business](doc/default/business.md)
|
|
221
|
+
- [Faker::Camera](doc/default/camera.md)
|
|
139
222
|
- [Faker::Cannabis](doc/default/cannabis.md)
|
|
140
223
|
- [Faker::ChileRut](doc/default/chile_rut.md)
|
|
141
224
|
- [Faker::ChuckNorris](doc/default/chuck_norris.md)
|
|
@@ -161,9 +244,9 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
161
244
|
- [Faker::Drone](doc/drone/drone.md)
|
|
162
245
|
- [Faker::Educator](doc/default/educator.md)
|
|
163
246
|
- [Faker::ElectricalComponents](doc/default/electrical_components.md)
|
|
247
|
+
- [Faker::Emotion](doc/default/emotion.md)
|
|
164
248
|
- [Faker::Esport](doc/default/esport.md)
|
|
165
249
|
- [Faker::File](doc/default/file.md)
|
|
166
|
-
- [Faker::Fillmurray](doc/default/fillmurray.md)
|
|
167
250
|
- [Faker::Finance](doc/default/finance.md)
|
|
168
251
|
- [Faker::Food](doc/default/food.md)
|
|
169
252
|
- [Faker::FunnyName](doc/default/funny_name.md)
|
|
@@ -171,8 +254,9 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
171
254
|
- [Faker::GreekPhilosophers](doc/default/greek_philosophers.md)
|
|
172
255
|
- [Faker::Hacker](doc/default/hacker.md)
|
|
173
256
|
- [Faker::Hipster](doc/default/hipster.md)
|
|
257
|
+
- [Faker::Hobby](doc/default/hobby.md)
|
|
174
258
|
- [Faker::House](doc/default/house.md)
|
|
175
|
-
- [Faker::
|
|
259
|
+
- [Faker::IdNumber](doc/default/id_number.md)
|
|
176
260
|
- [Faker::IndustrySegments](doc/default/industry_segments.md)
|
|
177
261
|
- [Faker::Internet](doc/default/internet.md)
|
|
178
262
|
- [Faker::Invoice](doc/default/invoice.md)
|
|
@@ -181,11 +265,11 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
181
265
|
- [Faker::Kpop](doc/default/kpop.md)
|
|
182
266
|
- [Faker::Lorem](doc/default/lorem.md)
|
|
183
267
|
- [Faker::LoremFlickr](doc/default/lorem_flickr.md)
|
|
184
|
-
- [Faker::LoremPixel](doc/default/lorem_pixel.md)
|
|
185
268
|
- [Faker::Markdown](doc/default/markdown.md)
|
|
186
269
|
- [Faker::Marketing](doc/default/marketing.md)
|
|
187
270
|
- [Faker::Measurement](doc/default/measurement.md)
|
|
188
271
|
- [Faker::Military](doc/default/military.md)
|
|
272
|
+
- [Faker::Mountain](doc/default/mountain.md)
|
|
189
273
|
- [Faker::Name](doc/default/name.md)
|
|
190
274
|
- [Faker::Nation](doc/default/nation.md)
|
|
191
275
|
- [Faker::NatoPhoneticAlphabet](doc/default/nato_phonetic_alphabet.md)
|
|
@@ -206,40 +290,71 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
206
290
|
- [Faker::Stripe](doc/default/stripe.md)
|
|
207
291
|
- [Faker::Subscription](doc/default/subscription.md)
|
|
208
292
|
- [Faker::Superhero](doc/default/superhero.md)
|
|
293
|
+
- [Faker::Tea](doc/default/tea.md)
|
|
209
294
|
- [Faker::Team](doc/default/team.md)
|
|
295
|
+
- [Faker::Theater](doc/default/theater.md)
|
|
210
296
|
- [Faker::Time](doc/default/time.md)
|
|
211
297
|
- [Faker::Twitter](doc/default/twitter.md)
|
|
212
298
|
- [Faker::Types](doc/default/types.md)
|
|
213
299
|
- [Faker::University](doc/default/university.md)
|
|
214
300
|
- [Faker::Vehicle](doc/default/vehicle.md)
|
|
215
301
|
- [Faker::Verbs](doc/default/verbs.md)
|
|
302
|
+
- [Faker::VulnerabilityIdentifier](doc/default/vulnerability_identifier.md)
|
|
216
303
|
- [Faker::WorldCup](doc/default/world_cup.md)
|
|
304
|
+
</details>
|
|
305
|
+
|
|
306
|
+
<details>
|
|
307
|
+
<summary>Blockchain</summary>
|
|
217
308
|
|
|
218
|
-
### Blockchain
|
|
219
309
|
- [Faker::Blockchain::Aeternity](doc/blockchain/aeternity.md)
|
|
220
310
|
- [Faker::Blockchain::Bitcoin](doc/blockchain/bitcoin.md)
|
|
221
311
|
- [Faker::Blockchain::Ethereum](doc/blockchain/ethereum.md)
|
|
222
312
|
- [Faker::Blockchain::Tezos](doc/blockchain/tezos.md)
|
|
313
|
+
</details>
|
|
314
|
+
|
|
315
|
+
<details>
|
|
316
|
+
<summary>Books</summary>
|
|
223
317
|
|
|
224
|
-
### Books
|
|
225
318
|
- [Faker::Book](doc/books/book.md)
|
|
226
319
|
- [Faker::Books::CultureSeries](doc/books/culture_series.md)
|
|
227
320
|
- [Faker::Books::Dune](doc/books/dune.md)
|
|
228
321
|
- [Faker::Books::Lovecraft](doc/books/lovecraft.md)
|
|
322
|
+
- [Faker::Books::TheKingkillerChronicle](doc/books/the_kingkiller_chronicle.md)
|
|
323
|
+
</details>
|
|
324
|
+
|
|
325
|
+
<details>
|
|
326
|
+
<summary>Fantasy</summary>
|
|
327
|
+
|
|
328
|
+
- [Faker::Fantasy::Tolkien](doc/fantasy/tolkien.md)
|
|
329
|
+
</details>
|
|
330
|
+
|
|
331
|
+
<details>
|
|
332
|
+
<summary>Travel</summary>
|
|
333
|
+
|
|
334
|
+
- [Faker:Travel::Airport](doc/travel/airport.md)
|
|
335
|
+
- [Faker:Travel::TrainStation](doc/travel/train_station.md)
|
|
336
|
+
</details>
|
|
337
|
+
|
|
338
|
+
<details>
|
|
339
|
+
<summary>Creature</summary>
|
|
229
340
|
|
|
230
|
-
### Creature
|
|
231
341
|
- [Faker::Creature::Animal](doc/creature/animal.md)
|
|
342
|
+
- [Faker::Creature::Bird](doc/creature/bird.md)
|
|
232
343
|
- [Faker::Creature::Cat](doc/creature/cat.md)
|
|
233
344
|
- [Faker::Creature::Dog](doc/creature/dog.md)
|
|
234
345
|
- [Faker::Creature::Horse](doc/creature/horse.md)
|
|
346
|
+
</details>
|
|
347
|
+
|
|
348
|
+
<details>
|
|
349
|
+
<summary>Games</summary>
|
|
235
350
|
|
|
236
|
-
### Games
|
|
237
351
|
- [Faker::Game](doc/games/game.md)
|
|
238
352
|
- [Faker::Games::ClashOfClans](doc/games/clash_of_clans.md)
|
|
239
353
|
- [Faker::Games::DnD](doc/games/dnd.md)
|
|
240
354
|
- [Faker::Games::Dota](doc/games/dota.md)
|
|
241
355
|
- [Faker::Games::ElderScrolls](doc/games/elder_scrolls.md)
|
|
242
356
|
- [Faker::Games::Fallout](doc/games/fallout.md)
|
|
357
|
+
- [Faker::Games::FinalFantasyXIV](doc/games/final_fantasy_xiv.md)
|
|
243
358
|
- [Faker::Games::HalfLife](doc/games/half_life.md)
|
|
244
359
|
- [Faker::Games::Heroes](doc/games/heroes.md)
|
|
245
360
|
- [Faker::Games::HeroesOfTheStorm](doc/games/heroes_of_the_storm.md)
|
|
@@ -252,12 +367,17 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
252
367
|
- [Faker::Games::StreetFighter](doc/games/street_fighter.md)
|
|
253
368
|
- [Faker::Games::SuperMario](doc/games/super_mario.md)
|
|
254
369
|
- [Faker::Games::SuperSmashBros](doc/games/super_smash_bros.md)
|
|
370
|
+
- [Faker::Games::Touhou](doc/games/touhou.md)
|
|
255
371
|
- [Faker::Games::WarhammerFantasy](doc/games/warhammer_fantasy.md)
|
|
256
372
|
- [Faker::Games::Witcher](doc/games/witcher.md)
|
|
257
373
|
- [Faker::Games::WorldOfWarcraft](doc/games/world_of_warcraft.md)
|
|
258
374
|
- [Faker::Games::Zelda](doc/games/zelda.md)
|
|
375
|
+
</details>
|
|
259
376
|
|
|
260
|
-
|
|
377
|
+
<details>
|
|
378
|
+
<summary>Japanese Media</summary>
|
|
379
|
+
|
|
380
|
+
- [Faker::JapaneseMedia::CowboyBebop](doc/japanese_media/cowboy_bebop.md)
|
|
261
381
|
- [Faker::JapaneseMedia::DragonBall](doc/japanese_media/dragon_ball.md)
|
|
262
382
|
- [Faker::JapaneseMedia::OnePiece](doc/japanese_media/one_piece.md)
|
|
263
383
|
- [Faker::JapaneseMedia::StudioGhibli](doc/japanese_media/studio_ghibli.md)
|
|
@@ -265,9 +385,14 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
265
385
|
- [Faker::JapaneseMedia::Naruto](doc/japanese_media/naruto.md)
|
|
266
386
|
- [Faker::JapaneseMedia::Doraemon](doc/japanese_media/doraemon.md)
|
|
267
387
|
- [Faker::JapaneseMedia::Conan](doc/japanese_media/conan.md)
|
|
388
|
+
- [Faker::JapaneseMedia::FullmetalAlchemistBrotherhood](doc/japanese_media/fullmetal_alchemist_brotherhood.md)
|
|
389
|
+
</details>
|
|
390
|
+
|
|
391
|
+
<details>
|
|
392
|
+
<summary>Movies</summary>
|
|
268
393
|
|
|
269
|
-
### Movies
|
|
270
394
|
- [Faker::Movie](doc/movies/movie.md)
|
|
395
|
+
- [Faker::Movies::Avatar](doc/movies/avatar.md)
|
|
271
396
|
- [Faker::Movies::BackToTheFuture](doc/movies/back_to_the_future.md)
|
|
272
397
|
- [Faker::Movies::Departed](doc/movies/departed.md)
|
|
273
398
|
- [Faker::Movies::Ghostbusters](doc/movies/ghostbusters.md)
|
|
@@ -279,35 +404,55 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
279
404
|
- [Faker::Movies::LordOfTheRings](doc/movies/lord_of_the_rings.md)
|
|
280
405
|
- [Faker::Movies::PrincessBride](doc/movies/princess_bride.md)
|
|
281
406
|
- [Faker::Movies::StarWars](doc/movies/star_wars.md)
|
|
407
|
+
- [Faker::Movies::TRON](doc/movies/tron.md)
|
|
282
408
|
- [Faker::Movies::VForVendetta](doc/movies/v_for_vendetta.md)
|
|
409
|
+
</details>
|
|
410
|
+
|
|
411
|
+
<details>
|
|
412
|
+
<summary>Music</summary>
|
|
283
413
|
|
|
284
|
-
### Music
|
|
285
414
|
- [Faker::Music](doc/music/music.md)
|
|
286
415
|
- [Faker::Music::GratefulDead](doc/music/grateful_dead.md)
|
|
416
|
+
- [Faker::Music::Hiphop](doc/music/hiphop.md)
|
|
287
417
|
- [Faker::Music::Opera](doc/music/opera.md)
|
|
288
418
|
- [Faker::Music::PearlJam](doc/music/pearl_jam.md)
|
|
289
419
|
- [Faker::Music::Phish](doc/music/phish.md)
|
|
290
420
|
- [Faker::Music::Prince](doc/music/prince.md)
|
|
291
421
|
- [Faker::Music::RockBand](doc/music/rock_band.md)
|
|
292
422
|
- [Faker::Music::Rush](doc/music/rush.md)
|
|
423
|
+
- [Faker::Music::SmashingPumpkins](doc/music/smashing_pumpkins.md)
|
|
293
424
|
- [Faker::Music::UmphreysMcgee](doc/music/umphreys_mcgee.md)
|
|
425
|
+
</details>
|
|
426
|
+
|
|
427
|
+
<details>
|
|
428
|
+
<summary>Quotes</summary>
|
|
294
429
|
|
|
295
|
-
### Quotes
|
|
296
430
|
- [Faker::Quote](doc/quotes/quote.md)
|
|
297
431
|
- [Faker::Quotes::Chiquito](doc/quotes/chiquito.md)
|
|
298
432
|
- [Faker::Quotes::Rajnikanth](doc/quotes/rajnikanth.md)
|
|
299
433
|
- [Faker::Quotes::Shakespeare](doc/quotes/shakespeare.md)
|
|
434
|
+
</details>
|
|
300
435
|
|
|
436
|
+
<details>
|
|
437
|
+
<summary>Sports</summary>
|
|
301
438
|
|
|
302
|
-
|
|
439
|
+
- [Faker::Sport](doc/sports/sport.md)
|
|
303
440
|
- [Faker::Sports::Basketball](doc/sports/basketball.md)
|
|
441
|
+
- [Faker::Sports::Chess](doc/sports/chess.md)
|
|
304
442
|
- [Faker::Sports::Football](doc/sports/football.md)
|
|
443
|
+
- [Faker::Sports::Mountaineering](doc/sports/mountaineering.md)
|
|
444
|
+
- [Faker::Sports::Volleyball](doc/sports/volleyball.md)
|
|
445
|
+
</details>
|
|
446
|
+
|
|
447
|
+
<details>
|
|
448
|
+
<summary>Tv Shows</summary>
|
|
305
449
|
|
|
306
|
-
### Tv Shows
|
|
307
450
|
- [Faker::TvShows::AquaTeenHungerForce](doc/tv_shows/aqua_teen_hunger_force.md)
|
|
451
|
+
- [Faker::TvShows::Archer](doc/tv_shows/archer.md)
|
|
308
452
|
- [Faker::TvShows::BigBangTheory](doc/tv_shows/big_bang_theory.md)
|
|
309
453
|
- [Faker::TvShows::BojackHorseman](doc/tv_shows/bojack_horseman.md)
|
|
310
454
|
- [Faker::TvShows::BreakingBad](doc/tv_shows/breaking_bad.md)
|
|
455
|
+
- [Faker::TvShows::BrooklynNineNine](doc/tv_shows/brooklyn_nine_nine.md)
|
|
311
456
|
- [Faker::TvShows::Buffy](doc/tv_shows/buffy.md)
|
|
312
457
|
- [Faker::TvShows::Community](doc/tv_shows/community.md)
|
|
313
458
|
- [Faker::TvShows::DrWho](doc/tv_shows/dr_who.md)
|
|
@@ -327,66 +472,43 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
|
327
472
|
- [Faker::TvShows::SiliconValley](doc/tv_shows/silicon_valley.md)
|
|
328
473
|
- [Faker::TvShows::Simpsons](doc/tv_shows/simpsons.md)
|
|
329
474
|
- [Faker::TvShows::SouthPark](doc/tv_shows/south_park.md)
|
|
475
|
+
- [Faker::TvShows::Spongebob](doc/tv_shows/spongebob.md)
|
|
330
476
|
- [Faker::TvShows::StarTrek](doc/tv_shows/star_trek.md)
|
|
331
477
|
- [Faker::TvShows::Stargate](doc/tv_shows/stargate.md)
|
|
332
478
|
- [Faker::TvShows::StrangerThings](doc/tv_shows/stranger_things.md)
|
|
333
479
|
- [Faker::TvShows::Suits](doc/tv_shows/suits.md)
|
|
480
|
+
- [Faker::TvShows::Supernatural](doc/tv_shows/supernatural.md)
|
|
334
481
|
- [Faker::TvShows::TheExpanse](doc/tv_shows/the_expanse.md)
|
|
335
482
|
- [Faker::TvShows::TheFreshPrinceOfBelAir](doc/tv_shows/the_fresh_prince_of_bel_air.md)
|
|
336
483
|
- [Faker::TvShows::TheITCrowd](doc/tv_shows/the_it_crowd.md)
|
|
337
484
|
- [Faker::TvShows::TheThickOfIt](doc/tv_shows/the_thick_of_it.md)
|
|
338
485
|
- [Faker::TvShows::TwinPeaks](doc/tv_shows/twin_peaks.md)
|
|
339
486
|
- [Faker::TvShows::VentureBros](doc/tv_shows/venture_bros.md)
|
|
487
|
+
</details>
|
|
340
488
|
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
allowing you to get different formats by switching locales. Just set
|
|
347
|
-
Faker::Config.locale to the locale you want, and Faker will take care of the
|
|
348
|
-
rest.
|
|
349
|
-
|
|
350
|
-
If your locale doesn't already exist, create it in the `lib/locales` directory
|
|
351
|
-
and you can then override or add elements to suit your needs. See more about how to
|
|
352
|
-
use locales [here](lib/locales/README.md)
|
|
353
|
-
|
|
354
|
-
```yaml
|
|
355
|
-
en-au-ocker:
|
|
356
|
-
faker:
|
|
357
|
-
name:
|
|
358
|
-
# Existing faker field, new data
|
|
359
|
-
first_name:
|
|
360
|
-
- Charlotte
|
|
361
|
-
- Ava
|
|
362
|
-
- Chloe
|
|
363
|
-
- Emily
|
|
364
|
-
|
|
365
|
-
# New faker fields
|
|
366
|
-
ocker_first_name:
|
|
367
|
-
- Bazza
|
|
368
|
-
- Bluey
|
|
369
|
-
- Davo
|
|
370
|
-
- Johno
|
|
371
|
-
- Shano
|
|
372
|
-
- Shazza
|
|
373
|
-
region:
|
|
374
|
-
- South East Queensland
|
|
375
|
-
- Wide Bay Burnett
|
|
376
|
-
- Margaret River
|
|
377
|
-
- Port Pirie
|
|
378
|
-
- Gippsland
|
|
379
|
-
- Elizabeth
|
|
380
|
-
- Barossa
|
|
381
|
-
```
|
|
489
|
+
<details>
|
|
490
|
+
<summary>Locations</summary>
|
|
491
|
+
|
|
492
|
+
- [Faker::Locations::Australia](doc/locations/australia.md)
|
|
493
|
+
</details>
|
|
382
494
|
|
|
383
495
|
## Contributing
|
|
384
|
-
See [CONTRIBUTING.md](https://github.com/stympy/faker/blob/master/CONTRIBUTING.md).
|
|
385
496
|
|
|
386
|
-
|
|
387
|
-
|
|
497
|
+
**Note**: We are not accepting proposals for new generators and locales. The [Contributing](https://github.com/faker-ruby/faker/blob/main/CONTRIBUTING.md) guide has a few notes about this decision.
|
|
498
|
+
|
|
499
|
+
Take a look at the [Contributing](https://github.com/faker-ruby/faker/blob/main/CONTRIBUTING.md) document for
|
|
500
|
+
instructions on setting up the repo on your machine, opening bug reports, understanding the codebase,
|
|
501
|
+
and creating a good pull request.
|
|
388
502
|
|
|
389
|
-
|
|
503
|
+
There is a [Discord channel](https://discord.gg/RMumTwB) to discuss anything
|
|
504
|
+
regarding improvements or feature requests.
|
|
505
|
+
|
|
506
|
+
Thank you, contributors!
|
|
507
|
+
|
|
508
|
+
## Versioning
|
|
509
|
+
|
|
510
|
+
Faker follows Semantic Versioning 2.0 as defined at https://semver.org.
|
|
390
511
|
|
|
391
512
|
## License
|
|
513
|
+
|
|
392
514
|
This code is free to use under the terms of the MIT license.
|
|
@@ -61,7 +61,7 @@ module Faker
|
|
|
61
61
|
def rand_strings(length = 50)
|
|
62
62
|
hex_alphabet = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
|
63
63
|
var = +''
|
|
64
|
-
length.times { var << sample(shuffle(hex_alphabet.
|
|
64
|
+
length.times { var << sample(shuffle(hex_alphabet.chars)) }
|
|
65
65
|
var
|
|
66
66
|
end
|
|
67
67
|
end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'openssl'
|
|
4
4
|
require 'securerandom'
|
|
5
5
|
|
|
6
6
|
module Faker
|
|
@@ -51,7 +51,7 @@ module Faker
|
|
|
51
51
|
def address_for(network)
|
|
52
52
|
version = PROTOCOL_VERSIONS.fetch(network)
|
|
53
53
|
packed = version.chr + Faker::Config.random.bytes(20)
|
|
54
|
-
checksum = Digest::
|
|
54
|
+
checksum = OpenSSL::Digest::SHA256.digest(OpenSSL::Digest::SHA256.digest(packed))[0..3]
|
|
55
55
|
Faker::Base58.encode(packed + checksum)
|
|
56
56
|
end
|
|
57
57
|
end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'openssl'
|
|
4
4
|
require 'securerandom'
|
|
5
5
|
|
|
6
6
|
module Faker
|
|
@@ -88,6 +88,34 @@ module Faker
|
|
|
88
88
|
encode_tz(:edsig, 64)
|
|
89
89
|
end
|
|
90
90
|
|
|
91
|
+
##
|
|
92
|
+
# Produces a random Tezos public key
|
|
93
|
+
#
|
|
94
|
+
# @return [String]
|
|
95
|
+
#
|
|
96
|
+
# @example
|
|
97
|
+
# Faker::Blockchain::Tezos.public_key
|
|
98
|
+
# #=> "edpkuib9x8QXRc5nWwHUg7U1dXsVmaUrUNU5sX9pVEEvwbMVdfMCeq"
|
|
99
|
+
#
|
|
100
|
+
# @faker.version 2.15.2
|
|
101
|
+
def public_key
|
|
102
|
+
encode_tz(:edpk, 32)
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
##
|
|
106
|
+
# Produces a random Tezos public key
|
|
107
|
+
#
|
|
108
|
+
# @return [String]
|
|
109
|
+
#
|
|
110
|
+
# @example
|
|
111
|
+
# Faker::Blockchain::Tezos.secret_key
|
|
112
|
+
# #=> "edsk3HZCAGEGpzQPnQUwQeFY4ESanFhQCgLpKriQw8GHyhKCrjHawv"
|
|
113
|
+
#
|
|
114
|
+
# @faker.version 2.15.2
|
|
115
|
+
def secret_key
|
|
116
|
+
encode_tz(:edsk, 32)
|
|
117
|
+
end
|
|
118
|
+
|
|
91
119
|
protected
|
|
92
120
|
|
|
93
121
|
##
|
|
@@ -97,8 +125,8 @@ module Faker
|
|
|
97
125
|
# @return [String]
|
|
98
126
|
def encode_tz(prefix, payload_size)
|
|
99
127
|
prefix = PREFIXES.fetch(prefix)
|
|
100
|
-
packed = prefix.map(&:chr).join
|
|
101
|
-
checksum = Digest::
|
|
128
|
+
packed = prefix.map(&:chr).join + Faker::Config.random.bytes(payload_size)
|
|
129
|
+
checksum = OpenSSL::Digest::SHA256.digest(OpenSSL::Digest::SHA256.digest(packed))[0..3]
|
|
102
130
|
Faker::Base58.encode(packed + checksum)
|
|
103
131
|
end
|
|
104
132
|
end
|
data/lib/faker/books/dune.rb
CHANGED
|
@@ -71,11 +71,7 @@ module Faker
|
|
|
71
71
|
# #=> "He who controls the spice, controls the universe!"
|
|
72
72
|
#
|
|
73
73
|
# @faker.version 1.9.3
|
|
74
|
-
def quote(
|
|
75
|
-
warn_for_deprecated_arguments do |keywords|
|
|
76
|
-
keywords << :character if legacy_character != NOT_GIVEN
|
|
77
|
-
end
|
|
78
|
-
|
|
74
|
+
def quote(character: nil)
|
|
79
75
|
quoted_characters = translate('faker.dune.quotes').keys
|
|
80
76
|
|
|
81
77
|
if character.nil?
|
|
@@ -106,11 +102,7 @@ module Faker
|
|
|
106
102
|
# #=> "May thy knife chip and shatter."
|
|
107
103
|
#
|
|
108
104
|
# @faker.version 1.9.3
|
|
109
|
-
def saying(
|
|
110
|
-
warn_for_deprecated_arguments do |keywords|
|
|
111
|
-
keywords << :source if legacy_source != NOT_GIVEN
|
|
112
|
-
end
|
|
113
|
-
|
|
105
|
+
def saying(source: nil)
|
|
114
106
|
sourced_sayings = translate('faker.dune.sayings').keys
|
|
115
107
|
|
|
116
108
|
if source.nil?
|