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
@@ -3,43 +3,126 @@
|
|
3
3
|
module Faker
|
4
4
|
class PhoneNumber < Base
|
5
5
|
class << self
|
6
|
+
##
|
7
|
+
# Produces a random phone number in a random format (may or may not have a country code, extension and can have different dividers).
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::PhoneNumber.phone_number #=> "397.693.1309 x4321"
|
13
|
+
#
|
14
|
+
# @faker.version 0.3.0
|
6
15
|
def phone_number
|
7
16
|
parse('phone_number.formats')
|
8
17
|
end
|
9
18
|
|
19
|
+
##
|
20
|
+
# Produces a random cell phone number in a random format (may or may not have a country code and can have different dividers).
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::PhoneNumber.cell_phone #=> "(186)285-7925"
|
26
|
+
#
|
27
|
+
# @faker.version 1.0.0
|
10
28
|
def cell_phone
|
11
29
|
parse('cell_phone.formats')
|
12
30
|
end
|
13
31
|
|
32
|
+
##
|
33
|
+
# Produces a random country code.
|
34
|
+
#
|
35
|
+
# @return [String]
|
36
|
+
#
|
37
|
+
# @example
|
38
|
+
# Faker::PhoneNumber.country_code #=> "+20"
|
39
|
+
#
|
40
|
+
# @faker.version 1.9.2
|
14
41
|
def country_code
|
15
42
|
"+#{fetch('country_code')}"
|
16
43
|
end
|
17
44
|
|
45
|
+
##
|
46
|
+
# Produces a random phone number with country code.
|
47
|
+
#
|
48
|
+
# @return [String]
|
49
|
+
#
|
50
|
+
# @example
|
51
|
+
# Faker::PhoneNumber.phone_number_with_country_code #=> "+95 1-672-173-8153"
|
52
|
+
#
|
53
|
+
# @faker.version 1.9.2
|
18
54
|
def phone_number_with_country_code
|
19
55
|
"#{country_code} #{phone_number}"
|
20
56
|
end
|
21
57
|
|
58
|
+
##
|
59
|
+
# Produces a random cell phone number with country code.
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
#
|
63
|
+
# @example
|
64
|
+
# Faker::PhoneNumber.cell_phone_with_country_code #=> "+974 (190) 987-9034"
|
65
|
+
#
|
66
|
+
# @faker.version 1.9.2
|
22
67
|
def cell_phone_with_country_code
|
23
68
|
"#{country_code} #{cell_phone}"
|
24
69
|
end
|
25
70
|
|
26
|
-
|
71
|
+
##
|
72
|
+
# Produces a random phone number in e164 format.
|
73
|
+
#
|
74
|
+
# @return [String]
|
75
|
+
#
|
76
|
+
# @example
|
77
|
+
# Faker::PhoneNumber.cell_phone_in_e164 #=> "+944937040625"
|
78
|
+
#
|
79
|
+
# @faker.version 1.9.2
|
80
|
+
def cell_phone_in_e164
|
81
|
+
cell_phone_with_country_code.delete('^+0-9')
|
82
|
+
end
|
83
|
+
|
84
|
+
##
|
85
|
+
# Produces a random US or Canada-based area code.
|
86
|
+
#
|
87
|
+
# @return [String]
|
88
|
+
#
|
89
|
+
# @example
|
90
|
+
# Faker::PhoneNumber.area_code #=> "201"
|
91
|
+
#
|
92
|
+
# @faker.version 1.3.0
|
27
93
|
def area_code
|
28
94
|
fetch('phone_number.area_code')
|
29
95
|
rescue I18n::MissingTranslationData
|
30
96
|
nil
|
31
97
|
end
|
32
98
|
|
33
|
-
|
99
|
+
##
|
100
|
+
# Produces a random US or Canada-based exchange code.
|
101
|
+
#
|
102
|
+
# @return [String]
|
103
|
+
#
|
104
|
+
# @example
|
105
|
+
# Faker::PhoneNumber.exchange_code #=> "208"
|
106
|
+
#
|
107
|
+
# @faker.version 1.3.0
|
34
108
|
def exchange_code
|
35
109
|
fetch('phone_number.exchange_code')
|
36
110
|
rescue I18n::MissingTranslationData
|
37
111
|
nil
|
38
112
|
end
|
39
113
|
|
40
|
-
|
41
|
-
# Can be used for both extensions and last four digits of phone number.
|
42
|
-
#
|
114
|
+
##
|
115
|
+
# Produces a random US or Canada-based extension / subscriber number. Can be used for both extensions and last four digits of phone number.
|
116
|
+
#
|
117
|
+
# @param length [Integer] Speficies the length of the return value.
|
118
|
+
# @return [String]
|
119
|
+
#
|
120
|
+
# @example
|
121
|
+
# Faker::PhoneNumber.subscriber_number #=> "3873"
|
122
|
+
# Faker::PhoneNumber.subscriber_number(length: 2) #=> "39"
|
123
|
+
# Faker::PhoneNumber.extension #=> "3764"
|
124
|
+
#
|
125
|
+
# @faker.version 1.3.0
|
43
126
|
def subscriber_number(legacy_length = NOT_GIVEN, length: 4)
|
44
127
|
warn_for_deprecated_arguments do |keywords|
|
45
128
|
keywords << :length if legacy_length != NOT_GIVEN
|
@@ -5,6 +5,27 @@ module Faker
|
|
5
5
|
class << self
|
6
6
|
SUPPORTED_FORMATS = %w[png jpg gif jpeg].freeze
|
7
7
|
|
8
|
+
##
|
9
|
+
# Produces a random placeholder image from https://placehold.it.
|
10
|
+
#
|
11
|
+
# @param size [String] Specifies the image's size, dimensions separated by 'x'.
|
12
|
+
# @param format [String] Specifies the image's extension.
|
13
|
+
# @param background_color [String, Symbol] Specifies the background color, either in hexadecimal format (without #) or as :random.
|
14
|
+
# @param text_color [String, Symbol] Specifies the text color, either in hexadecimal format (without #) or as :random.
|
15
|
+
# @param text [String] Specifies a custom text to be used.
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @example
|
19
|
+
# # Keyword arguments: size, format, background_color, text_color, text
|
20
|
+
# Faker::Placeholdit.image #=> "https://placehold.it/300x300.png"
|
21
|
+
# Faker::Placeholdit.image(size: '50x50') #=> "https://placehold.it/50x50.png"
|
22
|
+
# Faker::Placeholdit.image(size: '50x50', format: 'jpg') #=> "https://placehold.it/50x50.jpg"
|
23
|
+
# Faker::Placeholdit.image(size: '50x50', format: 'gif', background_color: 'ffffff') #=> "https://placehold.it/50x50.gif/ffffff"
|
24
|
+
# Faker::Placeholdit.image(size: '50x50', format: 'jpeg', background_color: :random) #=> "https://placehold.it/50x50.jpeg/39eba7"
|
25
|
+
# Faker::Placeholdit.image(size: '50x50', format: 'jpeg', background_color: 'ffffff', text_color: '000') #=> "https://placehold.it/50x50.jpeg/ffffff/000"
|
26
|
+
# Faker::Placeholdit.image(size: '50x50', format: 'jpg', background_color: 'ffffff', text_color: '000', text: 'Some Custom Text') #=> "https://placehold.it/50x50.jpg/ffffff/000?text=Some Custom Text"
|
27
|
+
#
|
28
|
+
# @faker.version 1.6.0
|
8
29
|
# rubocop:disable Metrics/ParameterLists
|
9
30
|
def image(legacy_size = NOT_GIVEN, legacy_format = NOT_GIVEN, legacy_background_color = NOT_GIVEN, legacy_text_color = NOT_GIVEN, legacy_text = NOT_GIVEN, size: '300x300', format: 'png', background_color: nil, text_color: nil, text: nil)
|
10
31
|
# rubocop:enable Metrics/ParameterLists
|
@@ -3,38 +3,119 @@
|
|
3
3
|
module Faker
|
4
4
|
class SlackEmoji < Base
|
5
5
|
class << self
|
6
|
+
##
|
7
|
+
# Produces a random slack emoji from people category.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::SlackEmoji.people #=> ":sleepy:"
|
13
|
+
#
|
14
|
+
# @faker.version 1.5.0
|
6
15
|
def people
|
7
16
|
fetch('slack_emoji.people')
|
8
17
|
end
|
9
18
|
|
19
|
+
##
|
20
|
+
# Produces a random slack emoji from nature category.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::SlackEmoji.nature #=> ":mount_fuji:"
|
26
|
+
#
|
27
|
+
# @faker.version 1.5.0
|
10
28
|
def nature
|
11
29
|
fetch('slack_emoji.nature')
|
12
30
|
end
|
13
31
|
|
32
|
+
##
|
33
|
+
# Produces a random slack emoji from food and drink category.
|
34
|
+
#
|
35
|
+
# @return [String]
|
36
|
+
#
|
37
|
+
# @example
|
38
|
+
# Faker::SlackEmoji.food_and_drink #=> ":beers:"
|
39
|
+
#
|
40
|
+
# @faker.version 1.5.0
|
14
41
|
def food_and_drink
|
15
42
|
fetch('slack_emoji.food_and_drink')
|
16
43
|
end
|
17
44
|
|
45
|
+
##
|
46
|
+
# Produces a random slack emoji from celebration category.
|
47
|
+
#
|
48
|
+
# @return [String]
|
49
|
+
#
|
50
|
+
# @example
|
51
|
+
# Faker::SlackEmoji.celebration #=> ":tada:"
|
52
|
+
#
|
53
|
+
# @faker.version 1.5.0
|
18
54
|
def celebration
|
19
55
|
fetch('slack_emoji.celebration')
|
20
56
|
end
|
21
57
|
|
58
|
+
##
|
59
|
+
# Produces a random slack emoji from activity category.
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
#
|
63
|
+
# @example
|
64
|
+
# Faker::SlackEmoji.activity #=> ":soccer:"
|
65
|
+
#
|
66
|
+
# @faker.version 1.5.0
|
22
67
|
def activity
|
23
68
|
fetch('slack_emoji.activity')
|
24
69
|
end
|
25
70
|
|
71
|
+
##
|
72
|
+
# Produces a random slack emoji from travel and places category.
|
73
|
+
#
|
74
|
+
# @return [String]
|
75
|
+
#
|
76
|
+
# @example
|
77
|
+
# Faker::SlackEmoji.travel_and_places #=> ":metro:"
|
78
|
+
#
|
79
|
+
# @faker.version 1.5.0
|
26
80
|
def travel_and_places
|
27
81
|
fetch('slack_emoji.travel_and_places')
|
28
82
|
end
|
29
83
|
|
84
|
+
##
|
85
|
+
# Produces a random slack emoji from objects and symbols category.
|
86
|
+
#
|
87
|
+
# @return [String]
|
88
|
+
#
|
89
|
+
# @example
|
90
|
+
# Faker::SlackEmoji.objects_and_symbols #=> ":id:"
|
91
|
+
#
|
92
|
+
# @faker.version 1.5.0
|
30
93
|
def objects_and_symbols
|
31
94
|
fetch('slack_emoji.objects_and_symbols')
|
32
95
|
end
|
33
96
|
|
97
|
+
##
|
98
|
+
# Produces a random slack emoji from custom category.
|
99
|
+
#
|
100
|
+
# @return [String]
|
101
|
+
#
|
102
|
+
# @example
|
103
|
+
# Faker::SlackEmoji.custom #=> ":slack:"
|
104
|
+
#
|
105
|
+
# @faker.version 1.5.0
|
34
106
|
def custom
|
35
107
|
fetch('slack_emoji.custom')
|
36
108
|
end
|
37
109
|
|
110
|
+
##
|
111
|
+
# Produces a random slack emoji from any category.
|
112
|
+
#
|
113
|
+
# @return [String]
|
114
|
+
#
|
115
|
+
# @example
|
116
|
+
# Faker::SlackEmoji.emoji #=> ":pizza:"
|
117
|
+
#
|
118
|
+
# @faker.version 1.5.0
|
38
119
|
def emoji
|
39
120
|
parse('slack_emoji.emoji')
|
40
121
|
end
|
@@ -3,46 +3,136 @@
|
|
3
3
|
module Faker
|
4
4
|
class SouthAfrica < Base
|
5
5
|
class << self
|
6
|
+
##
|
7
|
+
# Produces a South African ID number.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::SouthAfrica.id_number #=> "6110311856083"
|
13
|
+
#
|
14
|
+
# @faker.version 1.9.2
|
6
15
|
def id_number
|
7
16
|
Faker::IDNumber.south_african_id_number
|
8
17
|
end
|
9
18
|
|
19
|
+
##
|
20
|
+
# Produces a valid South African ID number
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::SouthAfrica.valid_id_number #=> "6110311856083"
|
26
|
+
#
|
27
|
+
# @faker.version 1.9.2
|
10
28
|
def valid_id_number
|
11
29
|
Faker::IDNumber.valid_south_african_id_number
|
12
30
|
end
|
13
31
|
|
32
|
+
##
|
33
|
+
# Produces an invalid South African ID number
|
34
|
+
#
|
35
|
+
# @return [String]
|
36
|
+
#
|
37
|
+
# @example
|
38
|
+
# Faker::SouthAfrica.invalid_id_number #=> "7018356904081"
|
39
|
+
#
|
40
|
+
# @faker.version 1.9.2
|
14
41
|
def invalid_id_number
|
15
42
|
Faker::IDNumber.invalid_south_african_id_number
|
16
43
|
end
|
17
44
|
|
45
|
+
##
|
46
|
+
# Produces a South African phone number.
|
47
|
+
#
|
48
|
+
# @return [String]
|
49
|
+
#
|
50
|
+
# @example
|
51
|
+
# Faker::SouthAfrica.phone_number #=> "010 788 5009"
|
52
|
+
#
|
53
|
+
# @faker.version 1.9.2
|
18
54
|
def phone_number
|
19
55
|
with_locale 'en-ZA' do
|
20
56
|
Faker::PhoneNumber.phone_number
|
21
57
|
end
|
22
58
|
end
|
23
59
|
|
60
|
+
##
|
61
|
+
# Produces a South African cell phone number.
|
62
|
+
#
|
63
|
+
# @return [String]
|
64
|
+
#
|
65
|
+
# @example
|
66
|
+
# Faker::SouthAfrica.cell_phone #=> "082 946 7470"
|
67
|
+
#
|
68
|
+
# @faker.version 1.9.2
|
24
69
|
def cell_phone
|
25
70
|
with_locale 'en-ZA' do
|
26
71
|
Faker::PhoneNumber.cell_phone
|
27
72
|
end
|
28
73
|
end
|
29
74
|
|
75
|
+
##
|
76
|
+
# Produces a South African private company registration number.
|
77
|
+
#
|
78
|
+
# @return [String]
|
79
|
+
#
|
80
|
+
# @example
|
81
|
+
# Faker::SouthAfrica.pty_ltd_registration_number #=> "5301/714689/07"
|
82
|
+
#
|
83
|
+
# @faker.version 1.9.2
|
30
84
|
def pty_ltd_registration_number
|
31
85
|
Faker::Company.south_african_pty_ltd_registration_number
|
32
86
|
end
|
33
87
|
|
88
|
+
##
|
89
|
+
# Produces a South African close corporation registration number.
|
90
|
+
#
|
91
|
+
# @return [String]
|
92
|
+
#
|
93
|
+
# @example
|
94
|
+
# Faker::SouthAfrica.close_corporation_registration_number #=> "CK74/7585/23"
|
95
|
+
#
|
96
|
+
# @faker.version 1.9.2
|
34
97
|
def close_corporation_registration_number
|
35
98
|
Faker::Company.south_african_close_corporation_registration_number
|
36
99
|
end
|
37
100
|
|
101
|
+
##
|
102
|
+
# Produces a South African listed company registration number.
|
103
|
+
#
|
104
|
+
# @return [String]
|
105
|
+
#
|
106
|
+
# @example
|
107
|
+
# Faker::SouthAfrica.listed_company_registration_number #=> "7039/3135/06"
|
108
|
+
#
|
109
|
+
# @faker.version 1.9.2
|
38
110
|
def listed_company_registration_number
|
39
111
|
Faker::Company.south_african_listed_company_registration_number
|
40
112
|
end
|
41
113
|
|
114
|
+
##
|
115
|
+
# Produces a South African trust registration number.
|
116
|
+
#
|
117
|
+
# @return [String]
|
118
|
+
#
|
119
|
+
# @example
|
120
|
+
# Faker::SouthAfrica.trust_registration_number #=> "IT38/6489900"
|
121
|
+
#
|
122
|
+
# @faker.version 1.9.2
|
42
123
|
def trust_registration_number
|
43
124
|
Faker::Company.south_african_trust_registration_number
|
44
125
|
end
|
45
126
|
|
127
|
+
##
|
128
|
+
# Produces a South African VAT number.
|
129
|
+
#
|
130
|
+
# @return [String]
|
131
|
+
#
|
132
|
+
# @example
|
133
|
+
# Faker::SouthAfrica.vat_number #=> "ZA79494416181"
|
134
|
+
#
|
135
|
+
# @faker.version 1.9.2
|
46
136
|
def vat_number
|
47
137
|
Faker::Finance.vat_number(country: 'ZA')
|
48
138
|
end
|
data/lib/faker/default/space.rb
CHANGED
data/lib/faker/default/string.rb
CHANGED
@@ -3,6 +3,22 @@
|
|
3
3
|
module Faker
|
4
4
|
class String < Base
|
5
5
|
class << self
|
6
|
+
##
|
7
|
+
# Produces a random UTF-8 string with optional nested length selectors.
|
8
|
+
#
|
9
|
+
# @param length [Integer, Range, Array<Integer, Range, nil>] The length of produced string and/or specific UTF-8 characters to use.
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
# rubocop:disable Style/AsciiComments
|
14
|
+
# Faker::String.random #=> "3 뇦\u0017&y\u{3A109}$8^4* 녹豿4좘툢ꔾ쉙6ɉ\uA6 8TN畀챵|\"3쇤Ŵ"
|
15
|
+
# Faker::String.random(length: 4) #=> "⼨%0*"
|
16
|
+
# Faker::String.random(length: 3..12) #=> "\u{69FDC};秨툫"
|
17
|
+
# Faker::String.random(length: [0, 6]) #=> "I轤𣴒P溟L"
|
18
|
+
# Faker::String.random(length: [1, (2..5), [3, 6], nil]) #=> "葓L#ћ"
|
19
|
+
# rubocop:enable Style/AsciiComments
|
20
|
+
#
|
21
|
+
# @faker.version 1.9.0
|
6
22
|
def random(legacy_length = NOT_GIVEN, length: 32)
|
7
23
|
warn_for_deprecated_arguments do |keywords|
|
8
24
|
keywords << :length if legacy_length != NOT_GIVEN
|
@@ -38,9 +54,9 @@ module Faker
|
|
38
54
|
|
39
55
|
def utf8character
|
40
56
|
sample([
|
41
|
-
rand(32..90),
|
42
|
-
rand(128),
|
43
|
-
rand(0xd800),
|
57
|
+
rand(32..90), # latin alphabet
|
58
|
+
rand(128), # 7-bit ASCII
|
59
|
+
rand(0xd800), # utf-8 codepoints below utf-16 surrogate halves
|
44
60
|
rand(57_344..1_114_111) # utf-8 codepoints above utf-16 surrogate halves
|
45
61
|
]).chr(Encoding::UTF_8)
|
46
62
|
end
|