faker 2.1.2 → 2.3.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 +88 -7
- data/README.md +2 -3
- data/lib/faker.rb +56 -1
- data/lib/faker/blockchain/bitcoin.rb +26 -0
- data/lib/faker/blockchain/ethereum.rb +10 -0
- data/lib/faker/blockchain/tezos.rb +62 -6
- data/lib/faker/books/book.rb +36 -0
- data/lib/faker/books/culture_series.rb +49 -0
- data/lib/faker/books/dune.rb +66 -5
- data/lib/faker/books/lovecraft.rb +210 -7
- data/lib/faker/creature/animal.rb +9 -0
- data/lib/faker/creature/cat.rb +27 -0
- data/lib/faker/creature/dog.rb +72 -0
- data/lib/faker/creature/horse.rb +18 -0
- data/lib/faker/default/address.rb +25 -5
- data/lib/faker/default/alphanumeric.rb +56 -7
- data/lib/faker/default/app.rb +54 -1
- data/lib/faker/default/artist.rb +9 -0
- data/lib/faker/default/avatar.rb +42 -1
- data/lib/faker/default/bank.rb +10 -2
- data/lib/faker/default/boolean.rb +16 -1
- data/lib/faker/default/chile_rut.rb +12 -2
- data/lib/faker/default/code.rb +16 -3
- data/lib/faker/default/commerce.rb +17 -3
- data/lib/faker/default/company.rb +10 -2
- data/lib/faker/default/crypto_coin.rb +15 -3
- data/lib/faker/default/date.rb +37 -5
- data/lib/faker/default/demographic.rb +5 -1
- data/lib/faker/default/driving_licence.rb +10 -4
- data/lib/faker/default/file.rb +19 -2
- data/lib/faker/default/fillmurray.rb +9 -1
- data/lib/faker/default/finance.rb +5 -1
- data/lib/faker/default/gender.rb +18 -0
- data/lib/faker/default/hacker.rb +59 -1
- data/lib/faker/default/hipster.rb +45 -6
- data/lib/faker/default/house.rb +18 -0
- data/lib/faker/default/id_number.rb +11 -3
- data/lib/faker/default/internet.rb +94 -13
- data/lib/faker/default/invoice.rb +16 -3
- data/lib/faker/default/json.rb +19 -2
- data/lib/faker/default/lorem.rb +81 -10
- data/lib/faker/default/lorem_flickr.rb +38 -5
- data/lib/faker/default/lorem_pixel.rb +10 -1
- data/lib/faker/default/markdown.rb +6 -1
- data/lib/faker/default/measurement.rb +40 -8
- data/lib/faker/default/name.rb +5 -1
- data/lib/faker/default/nhs.rb +5 -1
- data/lib/faker/default/number.rb +56 -11
- data/lib/faker/default/omniauth.rb +92 -9
- data/lib/faker/default/phone_number.rb +5 -1
- data/lib/faker/default/placeholdit.rb +11 -1
- data/lib/faker/default/programming_language.rb +18 -0
- data/lib/faker/default/relationship.rb +5 -1
- data/lib/faker/default/source.rb +59 -3
- data/lib/faker/default/string.rb +5 -1
- data/lib/faker/default/stripe.rb +20 -4
- data/lib/faker/default/time.rb +37 -4
- data/lib/faker/default/twitter.rb +32 -18
- data/lib/faker/default/types.rb +27 -5
- data/lib/faker/default/vehicle.rb +17 -4
- data/lib/faker/default/world_cup.rb +11 -2
- data/lib/faker/games/dota.rb +5 -1
- data/lib/faker/games/elder_scrolls.rb +72 -0
- data/lib/faker/games/fallout.rb +37 -0
- data/lib/faker/games/game.rb +27 -0
- data/lib/faker/games/half_life.rb +27 -0
- data/lib/faker/games/overwatch.rb +27 -0
- data/lib/faker/games/super_smash_bros.rb +18 -0
- data/lib/faker/games/zelda.rb +36 -0
- data/lib/faker/movies/star_wars.rb +6 -4
- data/lib/faker/tv_shows/breaking_bad.rb +18 -0
- data/lib/faker/version.rb +1 -1
- data/lib/locales/en-CA.yml +1 -1
- data/lib/locales/en/science.yml +1 -1
- data/lib/locales/ja.yml +1 -1
- metadata +31 -15
@@ -40,7 +40,11 @@ module Faker
|
|
40
40
|
# US and Canada only
|
41
41
|
# Can be used for both extensions and last four digits of phone number.
|
42
42
|
# Since extensions can be of variable length, this method taks a length parameter
|
43
|
-
def subscriber_number(length: 4)
|
43
|
+
def subscriber_number(legacy_length = NOT_GIVEN, length: 4)
|
44
|
+
warn_for_deprecated_arguments do |keywords|
|
45
|
+
keywords << :length if legacy_length != NOT_GIVEN
|
46
|
+
end
|
47
|
+
|
44
48
|
rand.to_s[2..(1 + length)]
|
45
49
|
end
|
46
50
|
|
@@ -5,7 +5,17 @@ module Faker
|
|
5
5
|
class << self
|
6
6
|
SUPPORTED_FORMATS = %w[png jpg gif jpeg].freeze
|
7
7
|
|
8
|
-
|
8
|
+
# rubocop:disable Metrics/ParameterLists
|
9
|
+
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
|
+
# rubocop:enable Metrics/ParameterLists
|
11
|
+
warn_for_deprecated_arguments do |keywords|
|
12
|
+
keywords << :size if legacy_size != NOT_GIVEN
|
13
|
+
keywords << :format if legacy_format != NOT_GIVEN
|
14
|
+
keywords << :background_color if legacy_background_color != NOT_GIVEN
|
15
|
+
keywords << :text_color if legacy_text_color != NOT_GIVEN
|
16
|
+
keywords << :text if legacy_text != NOT_GIVEN
|
17
|
+
end
|
18
|
+
|
9
19
|
background_color = generate_color if background_color == :random
|
10
20
|
text_color = generate_color if text_color == :random
|
11
21
|
|
@@ -3,10 +3,28 @@
|
|
3
3
|
module Faker
|
4
4
|
class ProgrammingLanguage < Base
|
5
5
|
class << self
|
6
|
+
##
|
7
|
+
# Produces the name of a programming language.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::ProgrammingLanguage.name #=> "Ruby"
|
13
|
+
#
|
14
|
+
# @faker.version 1.8.5
|
6
15
|
def name
|
7
16
|
fetch('programming_language.name')
|
8
17
|
end
|
9
18
|
|
19
|
+
##
|
20
|
+
# Produces the name of a programming language's creator.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::ProgrammingLanguage.creator #=> "Yukihiro Matsumoto"
|
26
|
+
#
|
27
|
+
# @faker.version 1.8.5
|
10
28
|
def creator
|
11
29
|
fetch('programming_language.creator')
|
12
30
|
end
|
@@ -5,7 +5,11 @@ module Faker
|
|
5
5
|
flexible :relationship
|
6
6
|
|
7
7
|
class << self
|
8
|
-
def familial(connection: nil)
|
8
|
+
def familial(legacy_connection = NOT_GIVEN, connection: nil)
|
9
|
+
warn_for_deprecated_arguments do |keywords|
|
10
|
+
keywords << :connection if legacy_connection != NOT_GIVEN
|
11
|
+
end
|
12
|
+
|
9
13
|
familial_connections = translate('faker.relationship.familial').keys
|
10
14
|
|
11
15
|
if connection.nil?
|
data/lib/faker/default/source.rb
CHANGED
@@ -3,16 +3,72 @@
|
|
3
3
|
module Faker
|
4
4
|
class Source < Base
|
5
5
|
class << self
|
6
|
-
|
6
|
+
##
|
7
|
+
# Produces source code for Hello World in a given language.
|
8
|
+
#
|
9
|
+
# @param lang [Symbol] The programming language to use
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
# Faker::Source.hello_world #=> "puts 'Hello World!'"
|
14
|
+
#
|
15
|
+
# @example
|
16
|
+
# Faker::Source.hello_world(lang: :javascript)
|
17
|
+
# #=> "alert('Hello World!');"
|
18
|
+
#
|
19
|
+
# @faker.version 1.9.0
|
20
|
+
def hello_world(legacy_lang = NOT_GIVEN, lang: :ruby)
|
21
|
+
warn_for_deprecated_arguments do |keywords|
|
22
|
+
keywords << :lang if legacy_lang != NOT_GIVEN
|
23
|
+
end
|
24
|
+
|
7
25
|
fetch("source.hello_world.#{lang}")
|
8
26
|
end
|
9
27
|
|
10
|
-
|
28
|
+
##
|
29
|
+
# Produces source code for printing a string in a given language.
|
30
|
+
#
|
31
|
+
# @param str [String] The string to print
|
32
|
+
# @param lang [Symbol] The programming language to use
|
33
|
+
# @return [String]
|
34
|
+
#
|
35
|
+
# @example
|
36
|
+
# Faker::Source.print #=> "puts 'faker_string_to_print'"
|
37
|
+
# @example
|
38
|
+
# Faker::Source.print(str: 'foo bar', lang: :javascript)
|
39
|
+
# #=> "console.log('foo bar');"
|
40
|
+
#
|
41
|
+
# @faker.version 1.9.0
|
42
|
+
def print(legacy_str = NOT_GIVEN, legacy_lang = NOT_GIVEN, str: 'some string', lang: :ruby)
|
43
|
+
warn_for_deprecated_arguments do |keywords|
|
44
|
+
keywords << :str if legacy_str != NOT_GIVEN
|
45
|
+
end
|
46
|
+
warn_for_deprecated_arguments do |keywords|
|
47
|
+
keywords << :lang if legacy_lang != NOT_GIVEN
|
48
|
+
end
|
11
49
|
code = fetch("source.print.#{lang}")
|
12
50
|
code.gsub('faker_string_to_print', str)
|
13
51
|
end
|
14
52
|
|
15
|
-
|
53
|
+
##
|
54
|
+
# Produces source code for printing 1 through 10 in a given language.
|
55
|
+
#
|
56
|
+
# @param lang [Symbol] The programming language to use
|
57
|
+
# @return [String]
|
58
|
+
#
|
59
|
+
# @example
|
60
|
+
# Faker::Source.print_1_to_10 #=> "(1..10).each { |i| puts i }"
|
61
|
+
# @example
|
62
|
+
# Faker::Source.print_1_to_10(lang: :javascript)
|
63
|
+
# # => "for (let i=0; i<10; i++) {
|
64
|
+
# # console.log(i);
|
65
|
+
# # }"
|
66
|
+
#
|
67
|
+
# @faker.version 1.9.0
|
68
|
+
def print_1_to_10(legacy_lang = NOT_GIVEN, lang: :ruby)
|
69
|
+
warn_for_deprecated_arguments do |keywords|
|
70
|
+
keywords << :lang if legacy_lang != NOT_GIVEN
|
71
|
+
end
|
16
72
|
fetch("source.print_1_to_10.#{lang}")
|
17
73
|
end
|
18
74
|
end
|
data/lib/faker/default/string.rb
CHANGED
@@ -3,7 +3,11 @@
|
|
3
3
|
module Faker
|
4
4
|
class String < Base
|
5
5
|
class << self
|
6
|
-
def random(length: 32)
|
6
|
+
def random(legacy_length = NOT_GIVEN, length: 32)
|
7
|
+
warn_for_deprecated_arguments do |keywords|
|
8
|
+
keywords << :length if legacy_length != NOT_GIVEN
|
9
|
+
end
|
10
|
+
|
7
11
|
utf8string select_a length
|
8
12
|
end
|
9
13
|
|
data/lib/faker/default/stripe.rb
CHANGED
@@ -3,7 +3,11 @@
|
|
3
3
|
module Faker
|
4
4
|
class Stripe < Base
|
5
5
|
class << self
|
6
|
-
def valid_card(card_type: nil)
|
6
|
+
def valid_card(legacy_card_type = NOT_GIVEN, card_type: nil)
|
7
|
+
warn_for_deprecated_arguments do |keywords|
|
8
|
+
keywords << :card_type if legacy_card_type != NOT_GIVEN
|
9
|
+
end
|
10
|
+
|
7
11
|
valid_cards = translate('faker.stripe.valid_cards').keys
|
8
12
|
|
9
13
|
if card_type.nil?
|
@@ -18,7 +22,11 @@ module Faker
|
|
18
22
|
fetch('stripe.valid_cards.' + card_type)
|
19
23
|
end
|
20
24
|
|
21
|
-
def valid_token(card_type: nil)
|
25
|
+
def valid_token(legacy_card_type = NOT_GIVEN, card_type: nil)
|
26
|
+
warn_for_deprecated_arguments do |keywords|
|
27
|
+
keywords << :card_type if legacy_card_type != NOT_GIVEN
|
28
|
+
end
|
29
|
+
|
22
30
|
valid_tokens = translate('faker.stripe.valid_tokens').keys
|
23
31
|
|
24
32
|
if card_type.nil?
|
@@ -33,7 +41,11 @@ module Faker
|
|
33
41
|
fetch('stripe.valid_tokens.' + card_type)
|
34
42
|
end
|
35
43
|
|
36
|
-
def invalid_card(card_error: nil)
|
44
|
+
def invalid_card(legacy_card_error = NOT_GIVEN, card_error: nil)
|
45
|
+
warn_for_deprecated_arguments do |keywords|
|
46
|
+
keywords << :card_error if legacy_card_error != NOT_GIVEN
|
47
|
+
end
|
48
|
+
|
37
49
|
invalid_cards = translate('faker.stripe.invalid_cards').keys
|
38
50
|
|
39
51
|
if card_error.nil?
|
@@ -57,7 +69,11 @@ module Faker
|
|
57
69
|
rand_in_range(start_year, start_year + 5).to_s
|
58
70
|
end
|
59
71
|
|
60
|
-
def ccv(card_type: nil)
|
72
|
+
def ccv(legacy_card_type = NOT_GIVEN, card_type: nil)
|
73
|
+
warn_for_deprecated_arguments do |keywords|
|
74
|
+
keywords << :card_type if legacy_card_type != NOT_GIVEN
|
75
|
+
end
|
76
|
+
|
61
77
|
(card_type.to_s == 'amex' ? rand_in_range(1000, 9999) : rand_in_range(100, 999)).to_s
|
62
78
|
end
|
63
79
|
end
|
data/lib/faker/default/time.rb
CHANGED
@@ -13,7 +13,15 @@ module Faker
|
|
13
13
|
}.freeze
|
14
14
|
|
15
15
|
class << self
|
16
|
-
|
16
|
+
# rubocop:disable Metrics/ParameterLists
|
17
|
+
def between(legacy_from = NOT_GIVEN, legacy_to = NOT_GIVEN, legacy_format = NOT_GIVEN, from:, to:, format: nil)
|
18
|
+
# rubocop:enable Metrics/ParameterLists
|
19
|
+
warn_for_deprecated_arguments do |keywords|
|
20
|
+
keywords << :from if legacy_from != NOT_GIVEN
|
21
|
+
keywords << :to if legacy_to != NOT_GIVEN
|
22
|
+
keywords << :format if legacy_format != NOT_GIVEN
|
23
|
+
end
|
24
|
+
|
17
25
|
from = get_time_object(from)
|
18
26
|
to = get_time_object(to)
|
19
27
|
|
@@ -21,17 +29,42 @@ module Faker
|
|
21
29
|
time_with_format(time, format)
|
22
30
|
end
|
23
31
|
|
24
|
-
|
32
|
+
# rubocop:disable Metrics/ParameterLists
|
33
|
+
def between_dates(legacy_from = NOT_GIVEN, legacy_to = NOT_GIVEN, legacy_period = NOT_GIVEN, legacy_format = NOT_GIVEN, from:, to:, period: :all, format: nil)
|
34
|
+
# rubocop:enable Metrics/ParameterLists
|
35
|
+
warn_for_deprecated_arguments do |keywords|
|
36
|
+
keywords << :from if legacy_from != NOT_GIVEN
|
37
|
+
keywords << :to if legacy_to != NOT_GIVEN
|
38
|
+
keywords << :period if legacy_period != NOT_GIVEN
|
39
|
+
keywords << :format if legacy_format != NOT_GIVEN
|
40
|
+
end
|
41
|
+
|
25
42
|
date = Faker::Date.between(from: from, to: to)
|
26
43
|
time = date_with_random_time(date, period)
|
27
44
|
time_with_format(time, format)
|
28
45
|
end
|
29
46
|
|
30
|
-
|
47
|
+
# rubocop:disable Metrics/ParameterLists
|
48
|
+
def forward(legacy_days = NOT_GIVEN, legacy_period = NOT_GIVEN, legacy_format = NOT_GIVEN, days: 365, period: :all, format: nil)
|
49
|
+
# rubocop:enable Metrics/ParameterLists
|
50
|
+
warn_for_deprecated_arguments do |keywords|
|
51
|
+
keywords << :days if legacy_days != NOT_GIVEN
|
52
|
+
keywords << :period if legacy_period != NOT_GIVEN
|
53
|
+
keywords << :format if legacy_format != NOT_GIVEN
|
54
|
+
end
|
55
|
+
|
31
56
|
time_with_format(date_with_random_time(Faker::Date.forward(days: days), period), format)
|
32
57
|
end
|
33
58
|
|
34
|
-
|
59
|
+
# rubocop:disable Metrics/ParameterLists
|
60
|
+
def backward(legacy_days = NOT_GIVEN, legacy_period = NOT_GIVEN, legacy_format = NOT_GIVEN, days: 365, period: :all, format: nil)
|
61
|
+
# rubocop:enable Metrics/ParameterLists
|
62
|
+
warn_for_deprecated_arguments do |keywords|
|
63
|
+
keywords << :days if legacy_days != NOT_GIVEN
|
64
|
+
keywords << :period if legacy_period != NOT_GIVEN
|
65
|
+
keywords << :format if legacy_format != NOT_GIVEN
|
66
|
+
end
|
67
|
+
|
35
68
|
time_with_format(date_with_random_time(Faker::Date.backward(days: days), period), format)
|
36
69
|
end
|
37
70
|
|
@@ -3,7 +3,12 @@
|
|
3
3
|
module Faker
|
4
4
|
class Twitter < Base
|
5
5
|
class << self
|
6
|
-
def user(include_status: true, include_email: false)
|
6
|
+
def user(legacy_include_status = NOT_GIVEN, legacy_include_email = NOT_GIVEN, include_status: true, include_email: false)
|
7
|
+
warn_for_deprecated_arguments do |keywords|
|
8
|
+
keywords << :include_status if legacy_include_status != NOT_GIVEN
|
9
|
+
keywords << :include_email if legacy_include_email != NOT_GIVEN
|
10
|
+
end
|
11
|
+
|
7
12
|
user_id = id
|
8
13
|
background_image_url = Faker::LoremPixel.image(size: '600x400') # TODO: Make the dimensions change
|
9
14
|
profile_image_url = Faker::Avatar.image(slug: user_id, size: '48x48')
|
@@ -15,7 +20,7 @@ module Faker
|
|
15
20
|
default_profile_image: Faker::Boolean.boolean(true_ratio: 0.1),
|
16
21
|
default_profile: Faker::Boolean.boolean(true_ratio: 0.1),
|
17
22
|
description: Faker::Lorem.sentence,
|
18
|
-
entities:
|
23
|
+
entities: user_entities,
|
19
24
|
favourites_count: Faker::Number.between(to: 1, from: 100_000),
|
20
25
|
follow_request_sent: false,
|
21
26
|
followers_count: Faker::Number.between(to: 1, from: 10_000_000),
|
@@ -54,7 +59,12 @@ module Faker
|
|
54
59
|
user
|
55
60
|
end
|
56
61
|
|
57
|
-
def status(include_user: true, include_photo: false)
|
62
|
+
def status(legacy_include_user = NOT_GIVEN, legacy_include_photo = NOT_GIVEN, include_user: true, include_photo: false)
|
63
|
+
warn_for_deprecated_arguments do |keywords|
|
64
|
+
keywords << :include_user if legacy_include_user != NOT_GIVEN
|
65
|
+
keywords << :include_photo if legacy_include_photo != NOT_GIVEN
|
66
|
+
end
|
67
|
+
|
58
68
|
status_id = id
|
59
69
|
status = {
|
60
70
|
id: status_id,
|
@@ -62,7 +72,7 @@ module Faker
|
|
62
72
|
contributors: nil,
|
63
73
|
coordinates: nil,
|
64
74
|
created_at: created_at,
|
65
|
-
entities:
|
75
|
+
entities: status_entities(include_photo: include_photo),
|
66
76
|
favorite_count: Faker::Number.between(to: 1, from: 10_000),
|
67
77
|
favorited: false,
|
68
78
|
geo: nil,
|
@@ -76,7 +86,7 @@ module Faker
|
|
76
86
|
place: nil,
|
77
87
|
possibly_sensitive: Faker::Boolean.boolean(true_ratio: 0.1),
|
78
88
|
retweet_count: Faker::Number.between(to: 1, from: 10_000),
|
79
|
-
retweeted_status:
|
89
|
+
retweeted_status: nil,
|
80
90
|
retweeted: false,
|
81
91
|
source: "<a href=\"#{Faker::Internet.url(host: 'example.com')}\" rel=\"nofollow\">#{Faker::Company.name}</a>",
|
82
92
|
text: Faker::Lorem.sentence,
|
@@ -107,21 +117,25 @@ module Faker
|
|
107
117
|
|
108
118
|
def user_entities
|
109
119
|
{
|
110
|
-
url:
|
120
|
+
url: {
|
111
121
|
urls: []
|
112
122
|
},
|
113
|
-
description:
|
123
|
+
description: {
|
114
124
|
urls: []
|
115
125
|
}
|
116
126
|
}
|
117
127
|
end
|
118
128
|
|
119
|
-
def status_entities(include_photo: false)
|
129
|
+
def status_entities(legacy_include_photo = NOT_GIVEN, include_photo: false)
|
130
|
+
warn_for_deprecated_arguments do |keywords|
|
131
|
+
keywords << :include_photo if legacy_include_photo != NOT_GIVEN
|
132
|
+
end
|
133
|
+
|
120
134
|
entities = {
|
121
|
-
hashtags:
|
122
|
-
symbols:
|
123
|
-
user_mentions:
|
124
|
-
urls:
|
135
|
+
hashtags: [],
|
136
|
+
symbols: [],
|
137
|
+
user_mentions: [],
|
138
|
+
urls: []
|
125
139
|
}
|
126
140
|
entities[:media] = [photo_entity] if include_photo
|
127
141
|
entities
|
@@ -135,7 +149,7 @@ module Faker
|
|
135
149
|
{
|
136
150
|
id: media_id,
|
137
151
|
id_str: media_id.to_s,
|
138
|
-
indices:
|
152
|
+
indices: [
|
139
153
|
103,
|
140
154
|
126
|
141
155
|
],
|
@@ -145,23 +159,23 @@ module Faker
|
|
145
159
|
display_url: 'example.com',
|
146
160
|
expanded_url: Faker::Internet.url(host: 'example.com'),
|
147
161
|
type: 'photo',
|
148
|
-
sizes:
|
149
|
-
medium:
|
162
|
+
sizes: {
|
163
|
+
medium: {
|
150
164
|
w: 1064,
|
151
165
|
h: 600,
|
152
166
|
resize: 'fit'
|
153
167
|
},
|
154
|
-
large:
|
168
|
+
large: {
|
155
169
|
w: 1064,
|
156
170
|
h: 600,
|
157
171
|
resize: 'fit'
|
158
172
|
},
|
159
|
-
small:
|
173
|
+
small: {
|
160
174
|
w: 680,
|
161
175
|
h: 383,
|
162
176
|
resize: 'fit'
|
163
177
|
},
|
164
|
-
thumb:
|
178
|
+
thumb: {
|
165
179
|
w: 150,
|
166
180
|
h: 150,
|
167
181
|
resize: 'crop'
|
data/lib/faker/default/types.rb
CHANGED
@@ -7,7 +7,11 @@ module Faker
|
|
7
7
|
COMPLEX_TYPES = %i[hash array].freeze
|
8
8
|
|
9
9
|
class << self
|
10
|
-
def rb_string(words: 1)
|
10
|
+
def rb_string(legacy_words = NOT_GIVEN, words: 1)
|
11
|
+
warn_for_deprecated_arguments do |keywords|
|
12
|
+
keywords << :words if legacy_words != NOT_GIVEN
|
13
|
+
end
|
14
|
+
|
11
15
|
resolved_num = resolve(words)
|
12
16
|
word_list =
|
13
17
|
translate('faker.lorem.words')
|
@@ -20,11 +24,21 @@ module Faker
|
|
20
24
|
sample(CHARACTERS)
|
21
25
|
end
|
22
26
|
|
23
|
-
def rb_integer(from: 0, to: 100)
|
27
|
+
def rb_integer(legacy_from = NOT_GIVEN, legacy_to = NOT_GIVEN, from: 0, to: 100)
|
28
|
+
warn_for_deprecated_arguments do |keywords|
|
29
|
+
keywords << :from if legacy_from != NOT_GIVEN
|
30
|
+
keywords << :to if legacy_to != NOT_GIVEN
|
31
|
+
end
|
32
|
+
|
24
33
|
rand(from..to).to_i
|
25
34
|
end
|
26
35
|
|
27
|
-
def rb_hash(number: 1, type: random_type)
|
36
|
+
def rb_hash(legacy_number = NOT_GIVEN, legacy_type = NOT_GIVEN, number: 1, type: random_type)
|
37
|
+
warn_for_deprecated_arguments do |keywords|
|
38
|
+
keywords << :number if legacy_number != NOT_GIVEN
|
39
|
+
keywords << :type if legacy_type != NOT_GIVEN
|
40
|
+
end
|
41
|
+
|
28
42
|
{}.tap do |hsh|
|
29
43
|
Lorem.words(number: number * 2).uniq.first(number).each do |s|
|
30
44
|
hsh.merge!(s.to_sym => type)
|
@@ -32,11 +46,19 @@ module Faker
|
|
32
46
|
end
|
33
47
|
end
|
34
48
|
|
35
|
-
def complex_rb_hash(number: 1)
|
49
|
+
def complex_rb_hash(legacy_number = NOT_GIVEN, number: 1)
|
50
|
+
warn_for_deprecated_arguments do |keywords|
|
51
|
+
keywords << :number if legacy_number != NOT_GIVEN
|
52
|
+
end
|
53
|
+
|
36
54
|
rb_hash(number: number, type: random_complex_type)
|
37
55
|
end
|
38
56
|
|
39
|
-
def rb_array(len: 1)
|
57
|
+
def rb_array(legacy_len = NOT_GIVEN, len: 1)
|
58
|
+
warn_for_deprecated_arguments do |keywords|
|
59
|
+
keywords << :len if legacy_len != NOT_GIVEN
|
60
|
+
end
|
61
|
+
|
40
62
|
[].tap do |ar|
|
41
63
|
len.times do
|
42
64
|
ar.push random_type
|