faker 2.10.2 → 2.15.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 +323 -0
- data/README.md +27 -2
- data/lib/faker.rb +57 -25
- data/lib/faker/blockchain/aeternity.rb +4 -4
- data/lib/faker/books/dune.rb +15 -2
- data/lib/faker/books/lovecraft.rb +8 -4
- data/lib/faker/default/address.rb +35 -5
- data/lib/faker/default/bank.rb +80 -3
- data/lib/faker/default/barcode.rb +154 -0
- data/lib/faker/default/beer.rb +3 -3
- data/lib/faker/default/blood.rb +48 -0
- data/lib/faker/default/business.rb +1 -1
- data/lib/faker/default/camera.rb +46 -0
- data/lib/faker/default/cannabis.rb +80 -0
- data/lib/faker/default/chile_rut.rb +47 -3
- data/lib/faker/default/code.rb +98 -17
- data/lib/faker/default/commerce.rb +74 -11
- data/lib/faker/default/company.rb +78 -11
- data/lib/faker/default/compass.rb +135 -0
- data/lib/faker/default/computer.rb +63 -0
- data/lib/faker/default/construction.rb +54 -0
- data/lib/faker/default/cosmere.rb +90 -0
- data/lib/faker/default/crypto_coin.rb +45 -0
- data/lib/faker/default/date.rb +16 -12
- data/lib/faker/default/driving_licence.rb +65 -0
- data/lib/faker/default/drone.rb +332 -0
- data/lib/faker/default/faker_adjective.rb +35 -0
- data/lib/faker/default/file.rb +49 -0
- data/lib/faker/default/finance.rb +45 -0
- data/lib/faker/default/food.rb +1 -1
- data/lib/faker/default/funny_name.rb +45 -0
- data/lib/faker/default/gender.rb +1 -1
- data/lib/faker/default/hipster.rb +101 -4
- data/lib/faker/default/id_number.rb +88 -2
- data/lib/faker/default/internet.rb +68 -10
- data/lib/faker/default/internet_http.rb +48 -0
- data/lib/faker/default/invoice.rb +33 -6
- data/lib/faker/default/json.rb +59 -4
- data/lib/faker/default/lorem.rb +2 -2
- data/lib/faker/default/lorem_flickr.rb +65 -0
- data/lib/faker/default/lorem_pixel.rb +22 -0
- data/lib/faker/default/markdown.rb +89 -0
- data/lib/faker/default/measurement.rb +93 -2
- data/lib/faker/default/military.rb +26 -0
- data/lib/faker/default/mountain.rb +33 -0
- data/lib/faker/default/name.rb +98 -0
- data/lib/faker/default/nhs.rb +19 -0
- data/lib/faker/default/number.rb +6 -8
- data/lib/faker/default/omniauth.rb +107 -52
- data/lib/faker/default/phone_number.rb +88 -5
- data/lib/faker/default/placeholdit.rb +21 -0
- data/lib/faker/default/relationship.rb +1 -1
- data/lib/faker/default/slack_emoji.rb +81 -0
- data/lib/faker/default/south_africa.rb +90 -0
- data/lib/faker/default/space.rb +1 -1
- data/lib/faker/default/string.rb +19 -3
- data/lib/faker/default/stripe.rb +64 -3
- data/lib/faker/default/twitter.rb +35 -0
- data/lib/faker/default/types.rb +80 -0
- data/lib/faker/default/university.rb +45 -0
- data/lib/faker/default/vehicle.rb +184 -4
- data/lib/faker/default/verb.rb +45 -0
- data/lib/faker/default/world_cup.rb +4 -4
- data/lib/faker/fantasy/tolkien.rb +67 -0
- data/lib/faker/games/clash_of_clans.rb +48 -0
- data/lib/faker/games/control.rb +113 -0
- data/lib/faker/games/dnd.rb +136 -0
- data/lib/faker/games/elder_scrolls.rb +26 -0
- data/lib/faker/games/heroes.rb +13 -0
- data/lib/faker/games/heroes_of_the_storm.rb +16 -5
- data/lib/faker/games/minecraft.rb +113 -0
- data/lib/faker/games/street_fighter.rb +61 -0
- data/lib/faker/games/super_mario.rb +48 -0
- data/lib/faker/games/warhammer_fantasy.rb +74 -0
- data/lib/faker/games/world_of_warcraft.rb +26 -1
- data/lib/faker/japanese_media/conan.rb +48 -0
- data/lib/faker/japanese_media/doraemon.rb +48 -0
- data/lib/faker/japanese_media/dragon_ball.rb +26 -0
- data/lib/faker/japanese_media/naruto.rb +61 -0
- data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
- data/lib/faker/movies/departed.rb +49 -0
- data/lib/faker/movies/hobbit.rb +4 -4
- data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
- data/lib/faker/movies/lord_of_the_rings.rb +3 -3
- data/lib/faker/movies/movie.rb +13 -0
- data/lib/faker/movies/room.rb +63 -0
- data/lib/faker/movies/star_wars.rb +2 -2
- data/lib/faker/music/hiphop.rb +48 -0
- data/lib/faker/music/opera.rb +237 -1
- data/lib/faker/music/pearl_jam.rb +50 -0
- data/lib/faker/music/phish.rb +27 -1
- data/lib/faker/music/prince.rb +64 -0
- data/lib/faker/music/rush.rb +37 -0
- data/lib/faker/music/show.rb +49 -0
- data/lib/faker/quotes/chiquito.rb +80 -0
- data/lib/faker/quotes/quote.rb +80 -1
- data/lib/faker/quotes/rajnikanth.rb +26 -0
- data/lib/faker/quotes/shakespeare.rb +36 -0
- data/lib/faker/sports/volleyball.rb +74 -0
- data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +13 -0
- data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
- data/lib/faker/tv_shows/buffy.rb +17 -4
- data/lib/faker/tv_shows/dr_who.rb +1 -1
- data/lib/faker/tv_shows/final_space.rb +51 -0
- data/lib/faker/tv_shows/futurama.rb +65 -0
- data/lib/faker/tv_shows/simpsons.rb +14 -0
- data/lib/faker/tv_shows/suits.rb +37 -0
- data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +17 -4
- data/lib/faker/version.rb +1 -1
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/char.rb +22 -27
- data/lib/helpers/unique_generator.rb +3 -2
- data/lib/locales/de-AT.yml +4 -2
- data/lib/locales/de-CH.yml +1696 -1
- data/lib/locales/de.yml +4 -2
- data/lib/locales/en-AU.yml +50 -10
- data/lib/locales/en-CA.yml +2 -0
- data/lib/locales/en-GB.yml +1 -1
- data/lib/locales/en-IND.yml +2 -1
- data/lib/locales/en-MS.yml +2 -1
- data/lib/locales/en-NEP.yml +4 -1
- data/lib/locales/en-NZ.yml +3 -1
- data/lib/locales/en-PAK.yml +2 -1
- data/lib/locales/en-SG.yml +2 -1
- data/lib/locales/en-US.yml +36 -10
- data/lib/locales/en-au-ocker.yml +2 -1
- data/lib/locales/en.yml +0 -3
- data/lib/locales/en/address.yml +2 -0
- data/lib/locales/en/adjective.yml +179 -0
- data/lib/locales/en/animal.yml +1 -1
- data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
- data/lib/locales/en/bank.yml +1 -1
- data/lib/locales/en/barcode.yml +24 -0
- data/lib/locales/en/big_bang_theory.yml +38 -0
- data/lib/locales/en/blood.yml +13 -0
- data/lib/locales/en/buffy.yml +1 -1
- data/lib/locales/en/camera.yml +611 -0
- data/lib/locales/en/chiquito.yml +64 -0
- data/lib/locales/en/clash_of_clan.yml +101 -0
- data/lib/locales/en/company.yml +2 -2
- data/lib/locales/en/computer.yml +36 -0
- data/lib/locales/en/conan.yml +171 -0
- data/lib/locales/en/control.yml +247 -0
- data/lib/locales/en/demographic.yml +218 -5
- data/lib/locales/en/departed.yml +50 -0
- data/lib/locales/en/dnd.yml +451 -0
- data/lib/locales/en/doraemon.yml +286 -0
- data/lib/locales/en/dota.yml +531 -63
- data/lib/locales/en/dragon_ball.yml +243 -1
- data/lib/locales/en/driving_license.yml +181 -0
- data/lib/locales/en/drone.yml +95 -0
- data/lib/locales/en/dune.yml +401 -131
- data/lib/locales/en/elder_scrolls.yml +583 -9
- data/lib/locales/en/fallout.yml +311 -133
- data/lib/locales/en/final_space.yml +37 -0
- data/lib/locales/en/finance.yml +53 -0
- data/lib/locales/en/fresh_prince_of_bel_air.yml +1 -1
- data/lib/locales/en/futurama.yml +344 -0
- data/lib/locales/en/half_life.yml +84 -3
- data/lib/locales/en/heroes.yml +408 -3
- data/lib/locales/en/heroes_of_the_storm.yml +131 -4
- data/lib/locales/en/house.yml +1 -1
- data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
- data/lib/locales/en/jack_handey.yml +54 -0
- data/lib/locales/en/league_of_legends.yml +285 -6
- data/lib/locales/en/military.yml +179 -5
- data/lib/locales/en/minecraft.yml +663 -0
- data/lib/locales/en/mountain.yml +158 -0
- data/lib/locales/en/movie.yml +192 -1
- data/lib/locales/en/music.yml +451 -29
- data/lib/locales/en/myst.yml +87 -31
- data/lib/locales/en/name.yml +6 -5
- data/lib/locales/en/naruto.yml +231 -0
- data/lib/locales/en/one_piece.yml +2 -2
- data/lib/locales/en/opera.yml +168 -0
- data/lib/locales/en/overwatch.yml +2650 -2622
- data/lib/locales/en/pearl_jam.yml +213 -0
- data/lib/locales/en/phish.yml +392 -1
- data/lib/locales/en/pokemon.yml +417 -4
- data/lib/locales/en/prince.yml +227 -0
- data/lib/locales/en/quote.yml +692 -163
- data/lib/locales/en/rajnikanth.yml +77 -0
- data/lib/locales/en/room.yml +68 -0
- data/lib/locales/en/rush.yml +32 -0
- data/lib/locales/en/show.yml +597 -0
- data/lib/locales/en/simpsons.yml +668 -0
- data/lib/locales/en/source.yml +30 -0
- data/lib/locales/en/star_trek.yml +1 -1
- data/lib/locales/en/star_wars.yml +568 -220
- data/lib/locales/en/street_fighter.yml +1524 -0
- data/lib/locales/en/studio_ghibli.yml +107 -0
- data/lib/locales/en/suits.yml +45 -0
- data/lib/locales/en/super_mario.yml +58 -0
- data/lib/locales/en/super_smash_bros.yml +16 -4
- data/lib/locales/en/tolkien.yml +2453 -0
- data/lib/locales/en/volleyball.yml +501 -0
- data/lib/locales/en/warhammer_fantasy.yml +582 -0
- data/lib/locales/en/witcher.yml +389 -7
- data/lib/locales/en/world_of_warcraft.yml +122 -4
- data/lib/locales/en/zelda.yml +962 -4
- data/lib/locales/es.yml +56 -0
- data/lib/locales/fi-FI.yml +1 -1
- data/lib/locales/fr-CA.yml +21 -5
- data/lib/locales/fr-CH.yml +2 -2
- data/lib/locales/fr.yml +8 -2
- data/lib/locales/id.yml +2 -1
- data/lib/locales/it.yml +2 -1
- data/lib/locales/ja.yml +5 -1
- data/lib/locales/ko.yml +94 -2
- data/lib/locales/nb-NO.yml +4 -2
- data/lib/locales/pt-BR.yml +2 -1
- data/lib/locales/pt.yml +3 -1
- data/lib/locales/ru.yml +3 -1
- data/lib/locales/sk.yml +4 -2
- data/lib/locales/uk.yml +2 -0
- metadata +89 -21
- data/lib/locales/en/hobbit.yml +0 -19
- data/lib/locales/en/lord_of_the_rings.yml +0 -6
@@ -0,0 +1,63 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Computer < Base
|
5
|
+
class << self
|
6
|
+
##
|
7
|
+
# Produces the name of a computer platform.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::Computer.platform #=> "Linux"
|
13
|
+
#
|
14
|
+
# @faker.version 2.12.0
|
15
|
+
def platform
|
16
|
+
fetch('computer.platform')
|
17
|
+
end
|
18
|
+
|
19
|
+
##
|
20
|
+
# Produces the name of a computer type.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::Computer.type #=> "server"
|
26
|
+
#
|
27
|
+
# @faker.version 2.12.0
|
28
|
+
def type
|
29
|
+
fetch('computer.type')
|
30
|
+
end
|
31
|
+
|
32
|
+
##
|
33
|
+
# Produces the name of a computer os.
|
34
|
+
#
|
35
|
+
# @param platform [String] optionally specify the platform `linux`, `macos`, or `windows`.
|
36
|
+
# @return [String]
|
37
|
+
#
|
38
|
+
# @example
|
39
|
+
# Faker::Computer.os #=> "RHEL 6.10"
|
40
|
+
#
|
41
|
+
# @faker.version 2.12.0
|
42
|
+
def os(platform: self.platform)
|
43
|
+
platform = self.platform unless fetch_all('computer.platform').include?(platform)
|
44
|
+
fetch("computer.os.#{platform.downcase}")
|
45
|
+
end
|
46
|
+
|
47
|
+
##
|
48
|
+
# Produces a string with computer platform and os
|
49
|
+
#
|
50
|
+
# @return [String]
|
51
|
+
#
|
52
|
+
# @example
|
53
|
+
# Faker::Computer.stack #=> "Linux, RHEL 6.10"
|
54
|
+
#
|
55
|
+
# @faker.version 2.12.0
|
56
|
+
def stack
|
57
|
+
platform = self.platform
|
58
|
+
os = fetch("computer.os.#{platform.downcase}")
|
59
|
+
"#{platform}, #{os}"
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -2,26 +2,80 @@
|
|
2
2
|
|
3
3
|
module Faker
|
4
4
|
class Construction < Base
|
5
|
+
##
|
6
|
+
# Produces a random material.
|
7
|
+
#
|
8
|
+
# @return [String]
|
9
|
+
#
|
10
|
+
# @example
|
11
|
+
# Faker::Construction.material #=> "Wood"
|
12
|
+
#
|
13
|
+
# @faker.version 1.9.2
|
5
14
|
def self.material
|
6
15
|
fetch('construction.materials')
|
7
16
|
end
|
8
17
|
|
18
|
+
##
|
19
|
+
# Produces a random heavy equipment.
|
20
|
+
#
|
21
|
+
# @return [String]
|
22
|
+
#
|
23
|
+
# @example
|
24
|
+
# Faker::Construction.heavy_equipment #=> "Excavator"
|
25
|
+
#
|
26
|
+
# @faker.version 1.9.2
|
9
27
|
def self.heavy_equipment
|
10
28
|
fetch('construction.heavy_equipment')
|
11
29
|
end
|
12
30
|
|
31
|
+
##
|
32
|
+
# Produces a random trade.
|
33
|
+
#
|
34
|
+
# @return [String]
|
35
|
+
#
|
36
|
+
# @example
|
37
|
+
# Faker::Construction.trade #=> "Carpenter"
|
38
|
+
#
|
39
|
+
# @faker.version 1.9.2
|
13
40
|
def self.trade
|
14
41
|
fetch('construction.trades')
|
15
42
|
end
|
16
43
|
|
44
|
+
##
|
45
|
+
# Produces a random subcontract category.
|
46
|
+
#
|
47
|
+
# @return [String]
|
48
|
+
#
|
49
|
+
# @example
|
50
|
+
# Faker::Construction.subcontract_category #=> "Curb & Gutter"
|
51
|
+
#
|
52
|
+
# @faker.version 1.9.2
|
17
53
|
def self.subcontract_category
|
18
54
|
fetch('construction.subcontract_categories')
|
19
55
|
end
|
20
56
|
|
57
|
+
##
|
58
|
+
# Produces a random standard cost code.
|
59
|
+
#
|
60
|
+
# @return [String]
|
61
|
+
#
|
62
|
+
# @example
|
63
|
+
# Faker::Construction.standard_cost_code #=> "1-000 - Purpose"
|
64
|
+
#
|
65
|
+
# @faker.version 1.9.2
|
21
66
|
def self.standard_cost_code
|
22
67
|
fetch('construction.standard_cost_codes')
|
23
68
|
end
|
24
69
|
|
70
|
+
##
|
71
|
+
# Produces a random role.
|
72
|
+
#
|
73
|
+
# @return [String]
|
74
|
+
#
|
75
|
+
# @example
|
76
|
+
# Faker::Construction.role #=> "Engineer"
|
77
|
+
#
|
78
|
+
# @faker.version 1.9.2
|
25
79
|
def self.role
|
26
80
|
fetch('construction.roles')
|
27
81
|
end
|
@@ -4,42 +4,132 @@ module Faker
|
|
4
4
|
class Cosmere < Base
|
5
5
|
flexible :cosmere
|
6
6
|
class << self
|
7
|
+
##
|
8
|
+
# Produces a random aon.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
# Faker::Cosmere.aon #=> "Rao"
|
14
|
+
#
|
15
|
+
# @faker.version 1.9.2
|
7
16
|
def aon
|
8
17
|
sample(aons)
|
9
18
|
end
|
10
19
|
|
20
|
+
##
|
21
|
+
# Produces a random shard world.
|
22
|
+
#
|
23
|
+
# @return [String]
|
24
|
+
#
|
25
|
+
# @example
|
26
|
+
# Faker::Cosmere.shard_world #=> "Yolen"
|
27
|
+
#
|
28
|
+
# @faker.version 1.9.2
|
11
29
|
def shard_world
|
12
30
|
sample(shard_worlds)
|
13
31
|
end
|
14
32
|
|
33
|
+
##
|
34
|
+
# Produces a random shard.
|
35
|
+
#
|
36
|
+
# @return [String]
|
37
|
+
#
|
38
|
+
# @example
|
39
|
+
# Faker::Cosmere.shard #=> "Ambition"
|
40
|
+
#
|
41
|
+
# @faker.version 1.9.2
|
15
42
|
def shard
|
16
43
|
sample(shards)
|
17
44
|
end
|
18
45
|
|
46
|
+
##
|
47
|
+
# Produces a random surge.
|
48
|
+
#
|
49
|
+
# @return [String]
|
50
|
+
#
|
51
|
+
# @example
|
52
|
+
# Faker::Cosmere.surge #=> "Progression"
|
53
|
+
#
|
54
|
+
# @faker.version 1.9.2
|
19
55
|
def surge
|
20
56
|
sample(surges)
|
21
57
|
end
|
22
58
|
|
59
|
+
##
|
60
|
+
# Produces a random knight radiant.
|
61
|
+
#
|
62
|
+
# @return [String]
|
63
|
+
#
|
64
|
+
# @example
|
65
|
+
# Faker::Cosmere.knight_radiant #=> "Truthwatcher"
|
66
|
+
#
|
67
|
+
# @faker.version 1.9.2
|
23
68
|
def knight_radiant
|
24
69
|
sample(knights_radiant)
|
25
70
|
end
|
26
71
|
|
72
|
+
##
|
73
|
+
# Produces a random metal.
|
74
|
+
#
|
75
|
+
# @return [String]
|
76
|
+
#
|
77
|
+
# @example
|
78
|
+
# Faker::Cosmere.metal #=> "Brass"
|
79
|
+
#
|
80
|
+
# @faker.version 1.9.2
|
27
81
|
def metal
|
28
82
|
sample(metals)
|
29
83
|
end
|
30
84
|
|
85
|
+
##
|
86
|
+
# Produces a random allomancer.
|
87
|
+
#
|
88
|
+
# @return [String]
|
89
|
+
#
|
90
|
+
# @example
|
91
|
+
# Faker::Cosmere.allomancer #=> "Coinshot"
|
92
|
+
#
|
93
|
+
# @faker.version 1.9.2
|
31
94
|
def allomancer
|
32
95
|
sample(allomancers)
|
33
96
|
end
|
34
97
|
|
98
|
+
##
|
99
|
+
# Produces a random feruchemist.
|
100
|
+
#
|
101
|
+
# @return [String]
|
102
|
+
#
|
103
|
+
# @example
|
104
|
+
# Faker::Cosmere.feruchemist #=> "Archivist"
|
105
|
+
#
|
106
|
+
# @faker.version 1.9.2
|
35
107
|
def feruchemist
|
36
108
|
sample(feruchemists)
|
37
109
|
end
|
38
110
|
|
111
|
+
##
|
112
|
+
# Produces a random herald.
|
113
|
+
#
|
114
|
+
# @return [String]
|
115
|
+
#
|
116
|
+
# @example
|
117
|
+
# Faker::Cosmere.herald #=> "Ishar"
|
118
|
+
#
|
119
|
+
# @faker.version 1.9.2
|
39
120
|
def herald
|
40
121
|
sample(heralds)
|
41
122
|
end
|
42
123
|
|
124
|
+
##
|
125
|
+
# Produces a random spren.
|
126
|
+
#
|
127
|
+
# @return [String]
|
128
|
+
#
|
129
|
+
# @example
|
130
|
+
# Faker::Cosmere.spren #=> "Flamespren"
|
131
|
+
#
|
132
|
+
# @faker.version 1.9.2
|
43
133
|
def spren
|
44
134
|
sample(sprens)
|
45
135
|
end
|
@@ -7,6 +7,15 @@ module Faker
|
|
7
7
|
ACRONYM = 1
|
8
8
|
URL_LOGO = 2
|
9
9
|
|
10
|
+
##
|
11
|
+
# Produces a random crypto coin name.
|
12
|
+
#
|
13
|
+
# @return [String]
|
14
|
+
#
|
15
|
+
# @example
|
16
|
+
# Faker::CryptoCoin.coin_name #=> "Bitcoin"
|
17
|
+
#
|
18
|
+
# @faker.version 1.9.2
|
10
19
|
def coin_name(legacy_coin = NOT_GIVEN, coin: coin_array)
|
11
20
|
warn_for_deprecated_arguments do |keywords|
|
12
21
|
keywords << :coin if legacy_coin != NOT_GIVEN
|
@@ -15,6 +24,15 @@ module Faker
|
|
15
24
|
coin[COIN_NAME]
|
16
25
|
end
|
17
26
|
|
27
|
+
##
|
28
|
+
# Produces a random crypto coin acronym.
|
29
|
+
#
|
30
|
+
# @return [String]
|
31
|
+
#
|
32
|
+
# @example
|
33
|
+
# Faker::CryptoCoin.acronym #=> "BTC"
|
34
|
+
#
|
35
|
+
# @faker.version 1.9.2
|
18
36
|
def acronym(legacy_coin = NOT_GIVEN, coin: coin_array)
|
19
37
|
warn_for_deprecated_arguments do |keywords|
|
20
38
|
keywords << :coin if legacy_coin != NOT_GIVEN
|
@@ -23,6 +41,15 @@ module Faker
|
|
23
41
|
coin[ACRONYM]
|
24
42
|
end
|
25
43
|
|
44
|
+
##
|
45
|
+
# Produces a random crypto coin logo url.
|
46
|
+
#
|
47
|
+
# @return [String]
|
48
|
+
#
|
49
|
+
# @example
|
50
|
+
# Faker::CryptoCoin.url_logo #=> "https://i.imgur.com/EFz61Ei.png"
|
51
|
+
#
|
52
|
+
# @faker.version 1.9.2
|
26
53
|
def url_logo(legacy_coin = NOT_GIVEN, coin: coin_array)
|
27
54
|
warn_for_deprecated_arguments do |keywords|
|
28
55
|
keywords << :coin if legacy_coin != NOT_GIVEN
|
@@ -31,10 +58,28 @@ module Faker
|
|
31
58
|
coin[URL_LOGO]
|
32
59
|
end
|
33
60
|
|
61
|
+
##
|
62
|
+
# Produces a random crypto coin's name, acronym and logo in an array.
|
63
|
+
#
|
64
|
+
# @return [Array<String>]
|
65
|
+
#
|
66
|
+
# @example
|
67
|
+
# Faker::CryptoCoin.coin_array #=> ["Dash", "DASH", "https://i.imgur.com/2uX91cb.png"]
|
68
|
+
#
|
69
|
+
# @faker.version 1.9.2
|
34
70
|
def coin_array
|
35
71
|
fetch('crypto_coin.coin').split(',').map(&:strip)
|
36
72
|
end
|
37
73
|
|
74
|
+
##
|
75
|
+
# Produces a random crypto coin's name, acronym and logo in a hash.
|
76
|
+
#
|
77
|
+
# @return [Hash]
|
78
|
+
#
|
79
|
+
# @example
|
80
|
+
# Faker::CryptoCoin.coin_hash {:name=>"Ethereum", :acronym=>"ETH", :url_logo=>"https://i.imgur.com/uOPFCXj.png"}
|
81
|
+
#
|
82
|
+
# @faker.version 1.9.2
|
38
83
|
def coin_hash
|
39
84
|
coin = coin_array
|
40
85
|
|
data/lib/faker/default/date.rb
CHANGED
@@ -6,13 +6,15 @@ module Faker
|
|
6
6
|
##
|
7
7
|
# Produce a random date between two dates.
|
8
8
|
#
|
9
|
-
# @param from [Date] The start of the usable date range.
|
10
|
-
# @param to [Date] The end of the usable date range.
|
9
|
+
# @param from [Date, String] The start of the usable date range.
|
10
|
+
# @param to [Date, String] The end of the usable date range.
|
11
11
|
# @return [Date]
|
12
12
|
#
|
13
|
-
# @example
|
14
|
-
# Faker::Date.between(from:
|
15
|
-
#
|
13
|
+
# @example if used with or without Rails (Active Support)
|
14
|
+
# Faker::Date.between(from: '2014-09-23', to: '2014-09-25') #=> #<Date: 2014-09-24>
|
15
|
+
#
|
16
|
+
# @example if used with Rails (Active Support)
|
17
|
+
# Faker::Date.between(from: 2.days.ago, to: Date.today) #=> #<Date: 2014-09-24>
|
16
18
|
#
|
17
19
|
# @faker.version 1.0.0
|
18
20
|
def between(legacy_from = NOT_GIVEN, legacy_to = NOT_GIVEN, from:, to:)
|
@@ -32,14 +34,16 @@ module Faker
|
|
32
34
|
##
|
33
35
|
# Produce a random date between two dates.
|
34
36
|
#
|
35
|
-
# @param from [Date] The start of the usable date range.
|
36
|
-
# @param to [Date] The end of the usable date range.
|
37
|
-
# @param excepted [Date] A date to exclude.
|
37
|
+
# @param from [Date, String] The start of the usable date range.
|
38
|
+
# @param to [Date, String] The end of the usable date range.
|
39
|
+
# @param excepted [Date, String] A date to exclude.
|
38
40
|
# @return [Date]
|
39
41
|
#
|
40
|
-
# @example
|
41
|
-
# Faker::Date.between_except(from:
|
42
|
-
#
|
42
|
+
# @example if used with or without Rails (Active Support)
|
43
|
+
# Faker::Date.between_except(from: '2014-09-23', to: '2015-09-25', excepted: '2015-01-24') #=> #<Date: 2014-10-03>
|
44
|
+
#
|
45
|
+
# @example if used with Rails (Active Support)
|
46
|
+
# Faker::Date.between_except(from: 1.year.ago, to: 1.year.from_now, excepted: Date.today) #=> #<Date: 2014-10-03>
|
43
47
|
#
|
44
48
|
# @faker.version 1.6.2
|
45
49
|
def between_except(legacy_from = NOT_GIVEN, legacy_to = NOT_GIVEN, legacy_excepted = NOT_GIVEN, from:, to:, excepted:)
|
@@ -149,7 +153,7 @@ module Faker
|
|
149
153
|
# @example
|
150
154
|
# Faker::Date.in_date_period(month: 2) #=> #<Date: 2019-02-26>
|
151
155
|
#
|
152
|
-
# @faker.version
|
156
|
+
# @faker.version 2.13.0
|
153
157
|
def in_date_period(month: nil, year: ::Date.today.year)
|
154
158
|
from = ::Date.new(year, month || 1, 1)
|
155
159
|
to = ::Date.new(year, month || 12, ::Date.civil(year, month || 12, -1).day)
|
@@ -6,6 +6,23 @@ module Faker
|
|
6
6
|
NI_CHANCE = 0.03 # NI Pop is about 3% of total UK population
|
7
7
|
|
8
8
|
class << self
|
9
|
+
##
|
10
|
+
# Produces a random British driving licence number.
|
11
|
+
#
|
12
|
+
# @param last_name [String] The last name of the driving licence's owner.
|
13
|
+
# @param initials [String] The initials of the driving licence's owner.
|
14
|
+
# @param gender [String] The gender of the driving licence's owner.
|
15
|
+
# @param date_of_birth [String] The date of birth of the driving licence's owner.
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @example
|
19
|
+
# Faker::DrivingLicence.british_driving_licence #=> "MCDER712081VF7EK"
|
20
|
+
# Faker::DrivingLicence.british_driving_licence(last_name: "O'Carroll",
|
21
|
+
# initials: "J",
|
22
|
+
# gender: :female,
|
23
|
+
# date_of_birth: Date.parse("1986-10-24")) #=> "OCARR815246J91HT"
|
24
|
+
#
|
25
|
+
# @faker.version 1.9.2
|
9
26
|
# rubocop:disable Metrics/ParameterLists
|
10
27
|
def british_driving_licence(legacy_last_name = NOT_GIVEN, legacy_initials = NOT_GIVEN, legacy_gender = NOT_GIVEN, legacy_date_of_birth = NOT_GIVEN, last_name: Faker::Name.last_name, initials: Faker::Name.initials, gender: random_gender, date_of_birth: Faker::Date.birthday(min_age: 18, max_age: 65))
|
11
28
|
# rubocop:enable Metrics/ParameterLists
|
@@ -24,10 +41,35 @@ module Faker
|
|
24
41
|
].join
|
25
42
|
end
|
26
43
|
|
44
|
+
##
|
45
|
+
# Produces a random Northern Irish licence number.
|
46
|
+
#
|
47
|
+
# @return [String]
|
48
|
+
#
|
49
|
+
# @example
|
50
|
+
# Faker::DrivingLicence.northern_irish_driving_licence #=> "70702548"
|
51
|
+
#
|
52
|
+
# @faker.version 1.9.2
|
27
53
|
def northern_irish_driving_licence
|
28
54
|
Faker::Number.number(digits: 8).to_s
|
29
55
|
end
|
30
56
|
|
57
|
+
##
|
58
|
+
# Produces a random UK driving licence number in either GB or NI format, at a rate consistent with their relative populations
|
59
|
+
#
|
60
|
+
# @overload uk_driving_licence(last_name, initials, gender, date_of_birth)
|
61
|
+
# @param last_name [String] The last name of the driving licence's owner.
|
62
|
+
# @param initials [String] The initials of the driving licence's owner.
|
63
|
+
# @param gender [String] The gender of the driving licence's owner.
|
64
|
+
# @param date_of_birth [String] The date of birth of the driving licence's owner.
|
65
|
+
# @overload uk_driving_licence()
|
66
|
+
# @return [String]
|
67
|
+
#
|
68
|
+
# @example
|
69
|
+
# Faker::DrivingLicence.uk_driving_licence #=> "OCARR815246J91HT"
|
70
|
+
# Faker::DrivingLicence.uk_driving_licence #=> "70702548"
|
71
|
+
#
|
72
|
+
# @faker.version 1.9.2
|
31
73
|
def uk_driving_licence(*args)
|
32
74
|
if Faker::Config.random.rand < NI_CHANCE
|
33
75
|
northern_irish_driving_licence
|
@@ -36,6 +78,23 @@ module Faker
|
|
36
78
|
end
|
37
79
|
end
|
38
80
|
|
81
|
+
##
|
82
|
+
# Produces a random USA driving licence number by state code passed.
|
83
|
+
#
|
84
|
+
# @return [String]
|
85
|
+
#
|
86
|
+
# @example
|
87
|
+
# Faker::DrivingLicence.usa_driving_licence #=> "V5598249"
|
88
|
+
# Faker::DrivingLicence.usa_driving_licence('new mexico') #=> "270692028"
|
89
|
+
# Faker::DrivingLicence.usa_driving_licence('New Mexico') #=> "68178637"
|
90
|
+
#
|
91
|
+
# @faker.version 2.14.0
|
92
|
+
def usa_driving_licence(state = 'California')
|
93
|
+
bothify(fetch("driving_licence.usa.#{state.to_s.strip.downcase.gsub(' ', '_')}"))
|
94
|
+
rescue I18n::MissingTranslationData => _e
|
95
|
+
raise InvalidStatePassed, "Invalid state code passed for USA, '#{state}'"
|
96
|
+
end
|
97
|
+
|
39
98
|
private
|
40
99
|
|
41
100
|
def random_gender
|
@@ -62,4 +121,10 @@ module Faker
|
|
62
121
|
end
|
63
122
|
end
|
64
123
|
end
|
124
|
+
|
125
|
+
class InvalidStatePassed < StandardError
|
126
|
+
def initialize(msg = 'Invalid state code passed')
|
127
|
+
super
|
128
|
+
end
|
129
|
+
end
|
65
130
|
end
|