faker 2.12.0 → 2.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +71 -0
- data/README.md +3 -0
- data/lib/faker.rb +2 -1
- data/lib/faker/default/address.rb +30 -0
- data/lib/faker/default/bank.rb +1 -1
- data/lib/faker/default/blood.rb +3 -3
- data/lib/faker/default/chile_rut.rb +44 -1
- data/lib/faker/default/company.rb +1 -3
- data/lib/faker/default/computer.rb +4 -4
- data/lib/faker/default/date.rb +16 -12
- data/lib/faker/default/gender.rb +1 -1
- data/lib/faker/default/id_number.rb +86 -0
- data/lib/faker/default/internet.rb +35 -7
- data/lib/faker/default/internet_http.rb +48 -0
- 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/name.rb +15 -0
- data/lib/faker/default/nhs.rb +19 -0
- data/lib/faker/default/number.rb +5 -7
- data/lib/faker/default/omniauth.rb +58 -5
- data/lib/faker/default/world_cup.rb +4 -4
- data/lib/faker/games/control.rb +8 -8
- data/lib/faker/games/dnd.rb +4 -4
- data/lib/faker/games/heroes_of_the_storm.rb +16 -5
- data/lib/faker/games/minecraft.rb +48 -0
- data/lib/faker/games/warhammer_fantasy.rb +5 -5
- data/lib/faker/movies/departed.rb +3 -3
- data/lib/faker/movies/movie.rb +13 -0
- data/lib/faker/music/pearl_jam.rb +3 -3
- data/lib/faker/music/phish.rb +2 -2
- data/lib/faker/music/prince.rb +64 -0
- data/lib/faker/music/rush.rb +37 -0
- data/lib/faker/music/show.rb +3 -3
- 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/dr_who.rb +1 -1
- 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 +2 -2
- data/lib/faker/version.rb +1 -1
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/char.rb +20 -26
- data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
- data/lib/locales/en/bank.yml +1 -1
- data/lib/locales/en/big_bang_theory.yml +38 -0
- data/lib/locales/en/futurama.yml +344 -0
- data/lib/locales/en/heroes_of_the_storm.yml +1 -1
- data/lib/locales/en/minecraft.yml +390 -0
- data/lib/locales/en/movie.yml +192 -1
- data/lib/locales/en/name.yml +3 -2
- data/lib/locales/en/prince.yml +227 -0
- data/lib/locales/en/rush.yml +32 -0
- data/lib/locales/en/simpsons.yml +668 -0
- data/lib/locales/en/star_wars.yml +1 -0
- metadata +21 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 419bb77c9f0a8bc8f7c1b7ea5d93ba7d407bf7c437598eb91413f062f67494ce
|
4
|
+
data.tar.gz: 6566078b00ceb18763960551f913a341393858c2458cec01fcb4b0f0163d2e4b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 694b65a586f50b801f47a456954dd6f2fba39a82b9a643153bb140f9bd3467b7e3080c49a63f0a8562db10c6442bc7c5c578928ddde129054cb070d2a81658e3
|
7
|
+
data.tar.gz: eb6812f2f21c5a1930ad987ad8023efeb9168a6f6ec909fcd86d3deeb5e8720d82f457be58fc08f907d502571656ee6768bc21cbb6395a5366c2410d65e358cf
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,76 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## [v2.13.0](https://github.com/faker-ruby/faker/tree/v2.13.0) (2020-06-24)
|
4
|
+
|
5
|
+
This version:
|
6
|
+
- adds YARD docs for several interface methods
|
7
|
+
- fixes bugs
|
8
|
+
- adds improvements to the code base
|
9
|
+
- updates dependencies
|
10
|
+
|
11
|
+
## Bug/Fixes
|
12
|
+
|
13
|
+
- [PR #2050](https://github.com/faker-ruby/faker/pull/2050) Fix random error in music tests [@martinjaimem](https://github.com/martinjaimem)
|
14
|
+
- [PR #2037](https://github.com/faker-ruby/faker/pull/2037) Bug Fix: BIC Collission (Issue 1907) [@Newman101](https://github.com/Newman101)
|
15
|
+
- [PR #2026](https://github.com/faker-ruby/faker/pull/2026) Sanitize email when name has special characters [@Zeragamba](https://github.com/Zeragamba)
|
16
|
+
- [PR #1785](https://github.com/faker-ruby/faker/pull/1785) Adds a fix for when :en is not one of the available locales [@jaimerodas](https://github.com/jaimerodas)
|
17
|
+
|
18
|
+
## Chores
|
19
|
+
|
20
|
+
- [PR #2041](https://github.com/faker-ruby/faker/pull/2041) Reduce Lines in char.rb [@Newman101](https://github.com/Newman101)
|
21
|
+
- [PR #2039](https://github.com/faker-ruby/faker/pull/2039) restore Kylo Ren quotes [@Zeragamba](https://github.com/Zeragamba)
|
22
|
+
- [PR #2038](https://github.com/faker-ruby/faker/pull/2038) Drop EOL Rubies from CI tests [@Zeragamba](https://github.com/Zeragamba)
|
23
|
+
- [PR #2033](https://github.com/faker-ruby/faker/pull/2033) Use `Faker::Base::ULetters` constant instead [@vbrazo](https://github.com/vbrazo)
|
24
|
+
- [PR #2028](https://github.com/faker-ruby/faker/pull/2028) Reorganize some tests [@connorshea](https://github.com/connorshea)
|
25
|
+
- [PR #1853](https://github.com/faker-ruby/faker/pull/1853) Exclude string.rb from consideration by YARD. [@connorshea](https://github.com/connorshea)
|
26
|
+
|
27
|
+
## Deprecation
|
28
|
+
|
29
|
+
- [PR #2031](https://github.com/faker-ruby/faker/pull/2031) Deprecate `HeroesOfTheStorm.class` [@koic](https://github.com/koic)
|
30
|
+
|
31
|
+
## Documentation
|
32
|
+
|
33
|
+
- [PR #2065](https://github.com/faker-ruby/faker/pull/2065) Add missing documentation to `Faker::Computer` [@danielTiringer](https://github.com/danielTiringer)
|
34
|
+
- [PR #2064](https://github.com/faker-ruby/faker/pull/2064) Add minecraft generators [@Ri1a](https://github.com/Ri1a)
|
35
|
+
- [PR #2061](https://github.com/faker-ruby/faker/pull/2061) Update docs for `Faker::Date` with separate examples [@danielTiringer](https://github.com/danielTiringer)
|
36
|
+
- [PR #2057](https://github.com/faker-ruby/faker/pull/2057) Add missing quotes to `Faker::Internet` [@Zeragamba](https://github.com/Zeragamba)
|
37
|
+
- [PR #2055](https://github.com/faker-ruby/faker/pull/2055) Add YARD docs to `Faker::NHS` [@danielTiringer](https://github.com/danielTiringer)
|
38
|
+
- [PR #2054](https://github.com/faker-ruby/faker/pull/2054) Add YARD docs to `Faker::Chile_Rut` [@danielTiringer](https://github.com/danielTiringer)
|
39
|
+
- [PR #2053](https://github.com/faker-ruby/faker/pull/2053) Add YARD docs to `Faker::Lorem_Flickr` [@danielTiringer](https://github.com/danielTiringer)
|
40
|
+
- [PR #2052](https://github.com/faker-ruby/faker/pull/2052) Add YARD docs to `Faker::Lorem_Pixel` [@danielTiringer](https://github.com/danielTiringer)
|
41
|
+
- [PR #2051](https://github.com/faker-ruby/faker/pull/2051) Add YARD docs to `Faker::Omniauth` [@danielTiringer](https://github.com/danielTiringer)
|
42
|
+
- [PR #2036](https://github.com/faker-ruby/faker/pull/2036) Add YARD docs to `Faker::Markdown` [@danielTiringer](https://github.com/danielTiringer)
|
43
|
+
- [PR #2035](https://github.com/faker-ruby/faker/pull/2035) Add YARD docs to `Faker::ID_Number` [@danielTiringer](https://github.com/danielTiringer)
|
44
|
+
- [PR #2030](https://github.com/faker-ruby/faker/pull/2030) Add general documentation for `Faker::Blood` [@jbergenson](https://github.com/jbergenson)
|
45
|
+
- [PR #2029](https://github.com/faker-ruby/faker/pull/2029) Allow passing a string to specific `Faker::Date` methods. [@connorshea](https://github.com/connorshea)
|
46
|
+
|
47
|
+
## Feature Request
|
48
|
+
|
49
|
+
- [PR #2040](https://github.com/faker-ruby/faker/pull/2040) Split lint and test Github actions [@Zeragamba](https://github.com/Zeragamba)
|
50
|
+
- [PR #2032](https://github.com/faker-ruby/faker/pull/2032) Add `gender-neutral` first names to `Faker::Name` [@cmunozgar](https://github.com/cmunozgar)
|
51
|
+
- [PR #1965](https://github.com/faker-ruby/faker/pull/1965) Add new `full_address_as_hash` method which return the required address [@AmrAdelKhalil](https://github.com/AmrAdelKhalil)
|
52
|
+
- [PR #1952](https://github.com/faker-ruby/faker/pull/1952) Add `Faker::Movie.title` [@gizipp](https://github.com/gizipp)
|
53
|
+
- [PR #1932](https://github.com/faker-ruby/faker/pull/1932) Added AHTF Wisdom [@brotherjack](https://github.com/brotherjack)
|
54
|
+
- [PR #1912](https://github.com/faker-ruby/faker/pull/1912) Add `Faker::Music::Rush` [@willianveiga](https://github.com/willianveiga)
|
55
|
+
- [PR #1865](https://github.com/faker-ruby/faker/pull/1865) Add Big Bang Theory [@pathaknv](https://github.com/pathaknv)
|
56
|
+
- [PR #1858](https://github.com/faker-ruby/faker/pull/1858) Add `Faker::TvShows::Futurama` [@JoeNyland](https://github.com/JoeNyland)
|
57
|
+
- [PR #1821](https://github.com/faker-ruby/faker/pull/1821) Add HTTP status codes generator [@willianveiga](https://github.com/willianveiga)
|
58
|
+
- [PR #1804](https://github.com/faker-ruby/faker/pull/1804) Add `Faker::TvShows::Simpsons.episode_title` [@martinbjeldbak](https://github.com/martinbjeldbak)
|
59
|
+
- [PR #1670](https://github.com/faker-ruby/faker/pull/1670) Adds `Faker::Music::Prince` [@jessecalton](https://github.com/jessecalton)
|
60
|
+
|
61
|
+
## Update locales
|
62
|
+
|
63
|
+
- [PR #1792](https://github.com/faker-ruby/faker/pull/1792) Add more prefixes and suffixes to Name [@mathisto](https://github.com/mathisto)
|
64
|
+
|
65
|
+
## Update local dependencies
|
66
|
+
|
67
|
+
- Update rubocop requirement from = 0.81.0 to = 0.85.1
|
68
|
+
- Update rubocop requirement from = 0.85.1 to = 0.86.0 (#2066)
|
69
|
+
- Update test-unit requirement from = 3.3.5 to = 3.3.6 (#2046)
|
70
|
+
- Bump i18n from 1.8.2 to 1.8.3 (#2034)
|
71
|
+
|
72
|
+
------------------------------------------------------------------------------
|
73
|
+
|
3
74
|
## [v2.12.0](https://github.com/faker-ruby/faker/tree/v2.12.0) (2020-05-31)
|
4
75
|
|
5
76
|
This version:
|
data/README.md
CHANGED
@@ -275,7 +275,9 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
275
275
|
- [Faker::Music::GratefulDead](doc/music/grateful_dead.md)
|
276
276
|
- [Faker::Music::Opera](doc/music/opera.md)
|
277
277
|
- [Faker::Music::Phish](doc/music/phish.md)
|
278
|
+
- [Faker::Music::Prince](doc/music/prince.md)
|
278
279
|
- [Faker::Music::RockBand](doc/music/rock_band.md)
|
280
|
+
- [Faker::Music::Rush](doc/music/rush.md)
|
279
281
|
- [Faker::Music::UmphreysMcgee](doc/music/umphreys_mcgee.md)
|
280
282
|
|
281
283
|
### Quotes
|
@@ -291,6 +293,7 @@ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'mast
|
|
291
293
|
|
292
294
|
### Tv Shows
|
293
295
|
- [Faker::TvShows::AquaTeenHungerForce](doc/tv_shows/aqua_teen_hunger_force.md)
|
296
|
+
- [Faker::TvShows::BigBangTheory](doc/tv_shows/big_bang_theory.md)
|
294
297
|
- [Faker::TvShows::BojackHorseman](doc/tv_shows/bojack_horseman.md)
|
295
298
|
- [Faker::TvShows::BreakingBad](doc/tv_shows/breaking_bad.md)
|
296
299
|
- [Faker::TvShows::Buffy](doc/tv_shows/buffy.md)
|
data/lib/faker.rb
CHANGED
@@ -21,7 +21,8 @@ module Faker
|
|
21
21
|
attr_writer :random
|
22
22
|
|
23
23
|
def locale
|
24
|
-
|
24
|
+
# Because I18n.locale defaults to :en, if we don't have :en in our available_locales, errors will happen
|
25
|
+
@locale || (I18n.available_locales.include?(I18n.locale) ? I18n.locale : I18n.available_locales.first)
|
25
26
|
end
|
26
27
|
|
27
28
|
def own_locale
|
@@ -333,6 +333,36 @@ module Faker
|
|
333
333
|
def full_address
|
334
334
|
parse('address.full_address')
|
335
335
|
end
|
336
|
+
|
337
|
+
##
|
338
|
+
# Produces Address hash of required fields
|
339
|
+
#
|
340
|
+
# @return [Hash]
|
341
|
+
#
|
342
|
+
# @example
|
343
|
+
# Faker::Address.full_address_as_hash(:longitude,
|
344
|
+
# :latitude,
|
345
|
+
# :country_name_to_code,
|
346
|
+
# country_name_to_code: {name: 'united_states'})
|
347
|
+
# #=> {:longitude=>-101.74428917174603, :latitude=>-37.40056749089944, :country_name_to_code=>"US"}
|
348
|
+
#
|
349
|
+
# Faker::Address.full_address_as_hash(:full_address)
|
350
|
+
# #=> {:full_address=>"87635 Rice Street, Lake Brentonton, OR 61896-5968"}
|
351
|
+
#
|
352
|
+
# Faker::Address.full_address_as_hash(:city, :time_zone)
|
353
|
+
# #=> {:city=>"East Faustina", :time_zone=>"America/Mexico_City"}
|
354
|
+
#
|
355
|
+
# Faker::Address.full_address_as_hash(:street_address, street_address: {include_secondary: true})
|
356
|
+
# #=> {:street_address=>"29423 Kenneth Causeway Suite 563"}
|
357
|
+
#
|
358
|
+
# @faker.version 2.13.0
|
359
|
+
def full_address_as_hash(*attrs, **attrs_params)
|
360
|
+
attrs.map!(&:to_sym)
|
361
|
+
attrs_params.transform_keys!(&:to_sym)
|
362
|
+
attrs.map do |attr|
|
363
|
+
{ "#{attr}": attrs_params[attr] ? send(attr, **attrs_params[attr]) : send(attr) }
|
364
|
+
end.reduce({}, :merge)
|
365
|
+
end
|
336
366
|
end
|
337
367
|
end
|
338
368
|
end
|
data/lib/faker/default/bank.rb
CHANGED
data/lib/faker/default/blood.rb
CHANGED
@@ -13,7 +13,7 @@ module Faker
|
|
13
13
|
# @example
|
14
14
|
# Faker::Blood.type #=> "AB"
|
15
15
|
#
|
16
|
-
# @faker.version
|
16
|
+
# @faker.version 2.13.0
|
17
17
|
def type
|
18
18
|
fetch('blood.type')
|
19
19
|
end
|
@@ -26,7 +26,7 @@ module Faker
|
|
26
26
|
# @example
|
27
27
|
# Faker::Blood.rh_factor #=> "-"
|
28
28
|
#
|
29
|
-
# @faker.version
|
29
|
+
# @faker.version 2.13.0
|
30
30
|
def rh_factor
|
31
31
|
fetch('blood.rh_factor')
|
32
32
|
end
|
@@ -39,7 +39,7 @@ module Faker
|
|
39
39
|
# @example
|
40
40
|
# Faker::Blood.group #=> "AB-"
|
41
41
|
#
|
42
|
-
# @faker.version
|
42
|
+
# @faker.version 2.13.0
|
43
43
|
def group
|
44
44
|
parse('blood.group')
|
45
45
|
end
|
@@ -5,7 +5,19 @@ module Faker
|
|
5
5
|
class << self
|
6
6
|
@last_rut = nil
|
7
7
|
|
8
|
-
|
8
|
+
##
|
9
|
+
# Produces a random Chilean RUT (Rol Unico Tributario, ID with 8 digits).
|
10
|
+
#
|
11
|
+
# @param min_rut [Integer] Specifies the minimum value of the rut.
|
12
|
+
# @param fixed [Boolean] Determines if the rut is fixed (returns the min_rut value).
|
13
|
+
# @return [Number]
|
14
|
+
#
|
15
|
+
# @example
|
16
|
+
# Faker::ChileRut.rut #=> 11235813
|
17
|
+
# Faker::ChileRut.rut(min_rut: 20890156) #=> 31853211
|
18
|
+
# Faker::ChileRut.rut(min_rut: 20890156, fixed: true) #=> 20890156
|
19
|
+
#
|
20
|
+
# @faker.version 1.9.2
|
9
21
|
def rut(legacy_min_rut = NOT_GIVEN, legacy_fixed = NOT_GIVEN, min_rut: 1, fixed: false)
|
10
22
|
warn_for_deprecated_arguments do |keywords|
|
11
23
|
keywords << :min_rut if legacy_min_rut != NOT_GIVEN
|
@@ -15,6 +27,15 @@ module Faker
|
|
15
27
|
@last_rut = fixed ? min_rut : rand_in_range(min_rut, 99_999_999)
|
16
28
|
end
|
17
29
|
|
30
|
+
##
|
31
|
+
# Produces a random Chilean digito verificador (check-digit).
|
32
|
+
#
|
33
|
+
# @return [String]
|
34
|
+
#
|
35
|
+
# @example
|
36
|
+
# Faker::ChileRut.dv #=> "k"
|
37
|
+
#
|
38
|
+
# @faker.version 1.9.2
|
18
39
|
def dv
|
19
40
|
split_reversed_rut = @last_rut.to_s.reverse.split('')
|
20
41
|
seq = [2, 3, 4, 5, 6, 7]
|
@@ -34,11 +55,33 @@ module Faker
|
|
34
55
|
end
|
35
56
|
end
|
36
57
|
|
58
|
+
##
|
59
|
+
# Produces a random Chilean digito verificador (check-digit).
|
37
60
|
# Alias for english speaking devs.
|
61
|
+
#
|
62
|
+
# @return [String]
|
63
|
+
#
|
64
|
+
# @example
|
65
|
+
# Faker::ChileRut.check_digit #=> "5"
|
66
|
+
#
|
67
|
+
# @faker.version 1.9.2
|
38
68
|
def check_digit
|
39
69
|
dv
|
40
70
|
end
|
41
71
|
|
72
|
+
##
|
73
|
+
# Produces a random Chilean RUT (Rol Unico Tributario, ID with 8 digits) with a dv (digito verificador, check-digit).
|
74
|
+
#
|
75
|
+
# @param min_rut [Integer] Specifies the minimum value of the rut.
|
76
|
+
# @param fixed [Boolean] Determines if the rut is fixed (returns the min_rut value).
|
77
|
+
# @return [String]
|
78
|
+
#
|
79
|
+
# @example
|
80
|
+
# Faker::ChileRut.full_rut #=> "30686957-4"
|
81
|
+
# Faker::ChileRut.full_rut(min_rut: 20890156) #=> "30686957-4"
|
82
|
+
# Faker::ChileRut.full_rut(min_rut: 30686957, fixed: true) #=> "30686957-4"
|
83
|
+
#
|
84
|
+
# @faker.version 1.9.2
|
42
85
|
def full_rut(legacy_min_rut = NOT_GIVEN, legacy_fixed = NOT_GIVEN, min_rut: 0, fixed: false)
|
43
86
|
warn_for_deprecated_arguments do |keywords|
|
44
87
|
keywords << :min_rut if legacy_min_rut != NOT_GIVEN
|
@@ -165,9 +165,7 @@ module Faker
|
|
165
165
|
def spanish_organisation_number
|
166
166
|
# Valid leading character: A, B, C, D, E, F, G, H, J, N, P, Q, R, S, U, V, W
|
167
167
|
# 7 digit numbers
|
168
|
-
|
169
|
-
base = [sample(letters), format('%07d', rand(10**7))].join
|
170
|
-
base
|
168
|
+
[sample(self::ULetters), format('%07d', rand(10**7))].join
|
171
169
|
end
|
172
170
|
|
173
171
|
##
|
@@ -11,7 +11,7 @@ module Faker
|
|
11
11
|
# @example
|
12
12
|
# Faker::Computer.platform #=> "Linux"
|
13
13
|
#
|
14
|
-
# @faker.version
|
14
|
+
# @faker.version 2.12.0
|
15
15
|
def platform
|
16
16
|
fetch('computer.platform')
|
17
17
|
end
|
@@ -24,7 +24,7 @@ module Faker
|
|
24
24
|
# @example
|
25
25
|
# Faker::Computer.type #=> "server"
|
26
26
|
#
|
27
|
-
# @faker.version
|
27
|
+
# @faker.version 2.12.0
|
28
28
|
def type
|
29
29
|
fetch('computer.type')
|
30
30
|
end
|
@@ -38,7 +38,7 @@ module Faker
|
|
38
38
|
# @example
|
39
39
|
# Faker::Computer.os #=> "RHEL 6.10"
|
40
40
|
#
|
41
|
-
# @faker.version
|
41
|
+
# @faker.version 2.12.0
|
42
42
|
def os(platform: self.platform)
|
43
43
|
platform = self.platform unless fetch_all('computer.platform').include?(platform)
|
44
44
|
fetch("computer.os.#{platform.downcase}")
|
@@ -52,7 +52,7 @@ module Faker
|
|
52
52
|
# @example
|
53
53
|
# Faker::Computer.stack #=> "Linux, RHEL 6.10"
|
54
54
|
#
|
55
|
-
# @faker.version
|
55
|
+
# @faker.version 2.12.0
|
56
56
|
def stack
|
57
57
|
platform = self.platform
|
58
58
|
os = fetch("computer.os.#{platform.downcase}")
|
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)
|
data/lib/faker/default/gender.rb
CHANGED
@@ -19,10 +19,28 @@ module Faker
|
|
19
19
|
CHILEAN_MODULO = 11
|
20
20
|
|
21
21
|
class << self
|
22
|
+
##
|
23
|
+
# Produces a random valid US Social Security number.
|
24
|
+
#
|
25
|
+
# @return [String]
|
26
|
+
#
|
27
|
+
# @example
|
28
|
+
# Faker::IDNumber.valid #=> "552-56-3593"
|
29
|
+
#
|
30
|
+
# @faker.version 1.6.0
|
22
31
|
def valid
|
23
32
|
_translate('valid')
|
24
33
|
end
|
25
34
|
|
35
|
+
##
|
36
|
+
# Produces a random invalid US Social Security number.
|
37
|
+
#
|
38
|
+
# @return [String]
|
39
|
+
#
|
40
|
+
# @example
|
41
|
+
# Faker::IDNumber.invalid #=> "311-72-0000"
|
42
|
+
#
|
43
|
+
# @faker.version 1.6.0
|
26
44
|
def invalid
|
27
45
|
_translate('invalid')
|
28
46
|
end
|
@@ -33,6 +51,15 @@ module Faker
|
|
33
51
|
INVALID_SSN.any? { |regex| regex =~ ssn } ? ssn_valid : ssn
|
34
52
|
end
|
35
53
|
|
54
|
+
##
|
55
|
+
# Produces a random Spanish citizen identifier (DNI).
|
56
|
+
#
|
57
|
+
# @return [String]
|
58
|
+
#
|
59
|
+
# @example
|
60
|
+
# Faker::IDNumber.spanish_citizen_number #=> "53290236-H"
|
61
|
+
#
|
62
|
+
# @faker.version 1.9.0
|
36
63
|
def spanish_citizen_number
|
37
64
|
num = Faker::Number.number(digits: 8)
|
38
65
|
mod = num.to_i % 23
|
@@ -40,6 +67,15 @@ module Faker
|
|
40
67
|
"#{num}-#{check}"
|
41
68
|
end
|
42
69
|
|
70
|
+
##
|
71
|
+
# Produces a random Spanish foreign born citizen identifier (NIE).
|
72
|
+
#
|
73
|
+
# @return [String]
|
74
|
+
#
|
75
|
+
# @example
|
76
|
+
# Faker::IDNumber.spanish_foreign_citizen_number #=> "Z-1600870-Y"
|
77
|
+
#
|
78
|
+
# @faker.version 1.9.0
|
43
79
|
def spanish_foreign_citizen_number
|
44
80
|
code = 'XYZ'
|
45
81
|
digits = Faker::Number.number(digits: 7)
|
@@ -50,6 +86,16 @@ module Faker
|
|
50
86
|
"#{prefix}-#{digits}-#{check}"
|
51
87
|
end
|
52
88
|
|
89
|
+
##
|
90
|
+
# Produces a random valid South African ID Number.
|
91
|
+
#
|
92
|
+
# @return [String]
|
93
|
+
#
|
94
|
+
# @example
|
95
|
+
# Faker::IDNumber.south_african_id_number #=> "8105128870184"
|
96
|
+
# Faker::IDNumber.valid_south_african_id_number #=> "8105128870184"
|
97
|
+
#
|
98
|
+
# @faker.version 1.9.2
|
53
99
|
def valid_south_african_id_number
|
54
100
|
id_number = [
|
55
101
|
Faker::Date.birthday.strftime('%y%m%d'),
|
@@ -63,6 +109,15 @@ module Faker
|
|
63
109
|
|
64
110
|
alias south_african_id_number valid_south_african_id_number
|
65
111
|
|
112
|
+
##
|
113
|
+
# Produces a random invalid South African ID Number.
|
114
|
+
#
|
115
|
+
# @return [String]
|
116
|
+
#
|
117
|
+
# @example
|
118
|
+
# Faker::IDNumber.invalid_south_african_id_number #=> "1642972065088"
|
119
|
+
#
|
120
|
+
# @faker.version 1.9.2
|
66
121
|
def invalid_south_african_id_number
|
67
122
|
invalid_date_of_birth = [
|
68
123
|
Faker::Number.number(digits: 2),
|
@@ -80,6 +135,17 @@ module Faker
|
|
80
135
|
[id_number, south_african_id_checksum_digit(id_number)].join
|
81
136
|
end
|
82
137
|
|
138
|
+
##
|
139
|
+
# Produces a random Brazilian Citizen Number (CPF).
|
140
|
+
#
|
141
|
+
# @param formatted [Boolean] Specifies if the number is formatted with dividers.
|
142
|
+
# @return [String]
|
143
|
+
#
|
144
|
+
# @example
|
145
|
+
# Faker::IDNumber.brazilian_citizen_number #=> "53540542221"
|
146
|
+
# Faker::IDNumber.brazilian_citizen_number(formatted: true) #=> "535.405.422-21"
|
147
|
+
#
|
148
|
+
# @faker.version 1.9.2
|
83
149
|
def brazilian_citizen_number(legacy_formatted = NOT_GIVEN, formatted: false)
|
84
150
|
warn_for_deprecated_arguments do |keywords|
|
85
151
|
keywords << :formatted if legacy_formatted != NOT_GIVEN
|
@@ -94,6 +160,17 @@ module Faker
|
|
94
160
|
|
95
161
|
alias brazilian_cpf brazilian_citizen_number
|
96
162
|
|
163
|
+
##
|
164
|
+
# Produces a random Brazilian ID Number (RG).
|
165
|
+
#
|
166
|
+
# @param formatted [Boolean] Specifies if the number is formatted with dividers.
|
167
|
+
# @return [String]
|
168
|
+
#
|
169
|
+
# @example
|
170
|
+
# Faker::IDNumber.brazilian_id #=> "493054029"
|
171
|
+
# Faker::IDNumber.brazilian_id(formatted: true) #=> "49.305.402-9"
|
172
|
+
#
|
173
|
+
# @faker.version 2.1.2
|
97
174
|
def brazilian_id(legacy_formatted = NOT_GIVEN, formatted: false)
|
98
175
|
warn_for_deprecated_arguments do |keywords|
|
99
176
|
keywords << :formatted if legacy_formatted != NOT_GIVEN
|
@@ -107,6 +184,15 @@ module Faker
|
|
107
184
|
|
108
185
|
alias brazilian_rg brazilian_id
|
109
186
|
|
187
|
+
##
|
188
|
+
# Produces a random Chilean ID (Rut with 8 digits).
|
189
|
+
#
|
190
|
+
# @return [String]
|
191
|
+
#
|
192
|
+
# @example
|
193
|
+
# Faker::IDNumber.chilean_id #=> "15620613-K"
|
194
|
+
#
|
195
|
+
# @faker.version 2.1.2
|
110
196
|
def chilean_id
|
111
197
|
digits = Faker::Number.number(digits: 8)
|
112
198
|
verification_code = chilean_verification_code(digits)
|