ffaker 2.21.0 → 2.22.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.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +11 -0
  3. data/README.md +15 -4
  4. data/REFERENCE.md +316 -290
  5. data/Rakefile +9 -40
  6. data/bin/console +9 -0
  7. data/ffaker.gemspec +9 -19
  8. data/lib/ffaker/address_ua.rb +1 -1
  9. data/lib/ffaker/book.rb +5 -5
  10. data/lib/ffaker/code.rb +1 -1
  11. data/lib/ffaker/company.rb +1 -1
  12. data/lib/ffaker/company_fr.rb +1 -1
  13. data/lib/ffaker/data/address_de/state +1 -0
  14. data/lib/ffaker/data/jo_jo/first_names +356 -0
  15. data/lib/ffaker/data/jo_jo/full_names +225 -0
  16. data/lib/ffaker/data/jo_jo/last_names +153 -0
  17. data/lib/ffaker/data/jo_jo/stands +149 -0
  18. data/lib/ffaker/date.rb +31 -0
  19. data/lib/ffaker/geolocation.rb +2 -2
  20. data/lib/ffaker/identification_br.rb +1 -1
  21. data/lib/ffaker/identification_ec.rb +39 -0
  22. data/lib/ffaker/identification_es_cl.rb +2 -2
  23. data/lib/ffaker/identification_es_co.rb +1 -1
  24. data/lib/ffaker/identification_kr.rb +3 -3
  25. data/lib/ffaker/identification_pl.rb +4 -4
  26. data/lib/ffaker/identification_tw.rb +1 -1
  27. data/lib/ffaker/jo_jo.rb +24 -0
  28. data/lib/ffaker/name_pl.rb +1 -1
  29. data/lib/ffaker/number.rb +2 -2
  30. data/lib/ffaker/ssn_se.rb +2 -2
  31. data/lib/ffaker/string.rb +1 -1
  32. data/lib/ffaker/time.rb +3 -3
  33. data/lib/ffaker/utils/module_utils.rb +4 -5
  34. data/lib/ffaker/utils/unique_utils.rb +29 -21
  35. data/lib/ffaker/vehicle.rb +2 -2
  36. data/lib/{version.rb → ffaker/version.rb} +1 -1
  37. data/lib/ffaker.rb +7 -4
  38. data/test/helper.rb +2 -4
  39. data/test/test_address_da.rb +3 -3
  40. data/test/test_address_fi.rb +2 -2
  41. data/test/test_address_se.rb +2 -2
  42. data/test/test_cheesy_lingo.rb +1 -1
  43. data/test/test_color.rb +3 -3
  44. data/test/test_date.rb +37 -0
  45. data/test/test_filesystem.rb +3 -3
  46. data/test/test_freedom_ipsum.rb +1 -1
  47. data/test/test_gender_it.rb +1 -1
  48. data/test/test_gender_ja.rb +1 -1
  49. data/test/test_gender_jp.rb +1 -1
  50. data/test/test_gender_pl.rb +1 -1
  51. data/test/test_healthcare_ru.rb +1 -1
  52. data/test/test_hipster_ipsum.rb +1 -1
  53. data/test/test_html_ipsum.rb +2 -2
  54. data/test/test_identification_ec.rb +33 -0
  55. data/test/test_identification_es_mx.rb +1 -1
  56. data/test/test_internet_se.rb +2 -1
  57. data/test/test_jo_jo.rb +29 -0
  58. data/test/test_lorem_br.rb +1 -1
  59. data/test/test_lorem_cn.rb +3 -3
  60. data/test/test_lorem_fr.rb +3 -3
  61. data/test/test_lorem_ie.rb +2 -2
  62. data/test/test_lorem_kr.rb +3 -3
  63. data/test/test_lorem_pl.rb +2 -2
  64. data/test/test_lorem_ru.rb +3 -3
  65. data/test/test_lorem_ua.rb +3 -3
  66. data/test/test_module_utils.rb +33 -0
  67. data/test/test_name_da.rb +1 -1
  68. data/test/test_name_ph.rb +1 -1
  69. data/test/test_name_ru.rb +2 -2
  70. data/test/test_name_ua.rb +2 -2
  71. data/test/test_phone_number_se.rb +1 -1
  72. data/test/test_phone_number_sg.rb +8 -8
  73. data/test/test_unique_utils.rb +25 -5
  74. data/test/test_vehicle.rb +22 -0
  75. metadata +19 -198
@@ -0,0 +1,225 @@
1
+ Jonathan Joestar
2
+ Will Zeppeli
3
+ Robert Speedwagon
4
+ Dio Brando
5
+ Erina Pendleton
6
+ George Joestar
7
+ Wang Chan
8
+ Jack the Ripper
9
+ Dario Brando
10
+ Father Styx
11
+ Lisa Lisa
12
+ Mary Joestar
13
+ Mary Stuart
14
+ Mark Watkin
15
+ Jeff Back
16
+ Dan Hamar
17
+ Joseph Joestar
18
+ Caesar Zeppeli
19
+ Rudol Stroheim
20
+ Smokey Brown
21
+ Suzi Q
22
+ Wired Beck
23
+ Mario Zeppeli
24
+ Adolf Hitler
25
+ Jotaro Kujo
26
+ Muhammad Avdol
27
+ Noriaki Kakyoin
28
+ Jean Polnareff
29
+ Holy Kujo
30
+ Vanilla Ice
31
+ Hol Horse
32
+ Pet Shop
33
+ Telence D'Arby
34
+ Daniel D'Arby
35
+ Rubber Soul
36
+ Steely Dan
37
+ Wilson Phillips
38
+ Sherry Polnareff
39
+ Sadao Kujo
40
+ Caravan Serai
41
+ Garie Moor
42
+ Stephen Moor
43
+ Christian Vander
44
+ Shozo Mayama
45
+ Josuke Higashikata
46
+ Koichi Hirose
47
+ Okuyasu Nijimura
48
+ Rohan Kishibe
49
+ Hayato Kawajiri
50
+ Reimi Sugimoto
51
+ Shigekiyo Yangu
52
+ Mikitaka Hazekura
53
+ Yuya Fungami
54
+ Yukako Yamagishi
55
+ Tamami Kobayashi
56
+ Toshikazu Hazamada
57
+ Tonio Trussardi
58
+ Aya Tsuji
59
+ Shizuka Joestar
60
+ Yoshikage Kira
61
+ Yoshihiro Kira
62
+ Akira Otoishi
63
+ Anjuro Katagiri
64
+ Keicho Nijimura
65
+ Ken Oyanagi
66
+ Toyohiro Kanedaichi
67
+ Terunosuke Miyamoto
68
+ Masazo Kinoto
69
+ Tomoko Higashikata
70
+ Ryohei Higashikata
71
+ Father Nijimura
72
+ Ayana Hirose
73
+ Mukade Shopkeeper
74
+ Kosaku Kawajiri
75
+ Shinobu Kawajiri
76
+ Minako Okura
77
+ Satoru Nakae
78
+ Takashi Sugimoto
79
+ Kazuko Sugimoto
80
+ Ichiro Morishita
81
+ Hiroshi Yoshimura
82
+ Kai Harada
83
+ Rika Tachikawa
84
+ Masaya Yoshizawa
85
+ Giorno Giovanna
86
+ Bruno Bucciarati
87
+ Leone Abbacchio
88
+ Guido Mista
89
+ Narancia Ghirga
90
+ Pannacotta Fugo
91
+ Trish Una
92
+ Coco Jumbo
93
+ Vinegar Doppio
94
+ Mario Zucchero
95
+ Risotto Nero
96
+ Paolo Bucciarati
97
+ Donatella Una
98
+ Antonio Rossi
99
+ Mela Ghirga
100
+ Monica Ultello
101
+ 'Jolyne Cujoh
102
+ Ermes Costello
103
+ Emporio Alnino
104
+ Foo Fighters
105
+ Wes Bluemarine
106
+ Narciso Anasui
107
+ Savage Garden
108
+ Enrico Pucci
109
+ Donatello Versus
110
+ Sports Maxx
111
+ Thunder McQueen
112
+ Lang Rangler
113
+ Viviano Westwood
114
+ Miuccia Miuller
115
+ Corrupt Lawyer
116
+ Romeo Jisso
117
+ Sonny Likir
118
+ Gloria Costello
119
+ Perla Pucci
120
+ Johnny Joestar
121
+ Gyro Zeppeli
122
+ Lucy Steel
123
+ Diego Brando
124
+ Hot Pants
125
+ Steven Steel
126
+ Mountain Tim
127
+ Norisuke Higashikata
128
+ Funny Valentine
129
+ Ringo Roadagain
130
+ Axl RO
131
+ Magent Magent
132
+ Benjamin Boomboom
133
+ Andre Boomboom
134
+ Fritz Stroheim
135
+ Scarlet Valentine
136
+ Sugar Mountain
137
+ Gregorio Zeppeli
138
+ Nicholas Joestar
139
+ Rina Higashikata
140
+ Urmd Avdul
141
+ Dot Han
142
+ Baron Roocatugo
143
+ Mark Becker
144
+ David Hagen
145
+ Paul Lukather
146
+ Dixie Chicken
147
+ Zenyatta Mondatta
148
+ Baba Yaga
149
+ John Sloop
150
+ Billy White
151
+ Georgie Porgie
152
+ Anne Joestar
153
+ Adam Pendleton
154
+ Silas Pendleton
155
+ Mary Pendleton
156
+ Alice Pendleton
157
+ Yasuho Hirose
158
+ Rai Mamezuku
159
+ Jobin Higashikata
160
+ Tsurugi Higashikata
161
+ Joshu Higashikata
162
+ Kei Nijimura
163
+ Hato Higashikata
164
+ Daiya Higashikata
165
+ Mitsuba Higashikata
166
+ Kaato Higashikata
167
+ Karera Sakunami
168
+ Josefumi Kujo
169
+ Satoru Akefu
170
+ Tamaki Damo
171
+ Yotsuyu Yagiyama
172
+ Aisho Dainenjiyama
173
+ Urban Guerrilla
174
+ Doremifasolati Do
175
+ Wu Tomoki
176
+ Dododo De Dadada
177
+ Obladi Oblada
178
+ Radio Gaga
179
+ Hair Clip
180
+ Ojiro Sasame
181
+ Maako Kitani
182
+ Suzuyo Hirose
183
+ Kiyomi Kujo
184
+ Elizabeth Joestar
185
+ Yoshiteru Kira
186
+ Teru Higashikata
187
+ Toyoko Higashikata
188
+ Sadafumi Kujo
189
+ Atsunori Iwakiri
190
+ Zaihei Nigatake
191
+ Rena Nanami
192
+ Kyoka Izumi
193
+ Minoru Kaigamori
194
+ Naoko Osato
195
+ Gunpei Kamafusa
196
+ Nanase Kishibe
197
+ Nizaemon Yamamura
198
+ Noboru Mochizuki
199
+ Haruko Mochizuki
200
+ Aki Mochizuki
201
+ Takeru Mochizuki
202
+ Mitsu Mochizuki
203
+ Moon Rabbit
204
+ Mai Katahira
205
+ Mao Katahira
206
+ Yoma Hashimoto
207
+ Mika Hayamura
208
+ Mitsuki Murase
209
+ Hosho Osato
210
+ Kiriko Osato
211
+ Kai Osato
212
+ Frida Giannini
213
+ Sakuzo Mochizuki
214
+ Mamoru Mochizuki
215
+ Seizo Mochizuki
216
+ Sae Mochizuki
217
+ Kentaro Mochizuki
218
+ Kayo Mochizuki
219
+ Tsukiji Mochizuki
220
+ Yoshigoro Mochizuki
221
+ Yamato Mochizuki
222
+ Miwa Mochizuki
223
+ Akiko Mochizuki
224
+ Akira Katahira
225
+ Deliveryman Sawaki
@@ -0,0 +1,153 @@
1
+ Joestar
2
+ Zeppeli
3
+ Speedwagon
4
+ Brando
5
+ Pendleton
6
+ Chan
7
+ Ripper
8
+ Styx
9
+ Lisa
10
+ Stuart
11
+ Watkin
12
+ Back
13
+ Hamar
14
+ Stroheim
15
+ Brown
16
+ Q
17
+ Beck
18
+ Hitler
19
+ Kujo
20
+ Avdol
21
+ Kakyoin
22
+ Polnareff
23
+ Ice
24
+ Horse
25
+ Shop
26
+ D'Arby
27
+ N'Doul
28
+ Soul
29
+ Geil
30
+ Dan
31
+ Phillips
32
+ Tennille
33
+ Serai
34
+ Moor
35
+ Vander
36
+ Mayama
37
+ Higashikata
38
+ Hirose
39
+ Nijimura
40
+ Kishibe
41
+ Kawajiri
42
+ Sugimoto
43
+ Yangu
44
+ Hazekura
45
+ Fungami
46
+ Yamagishi
47
+ Kobayashi
48
+ Hazamada
49
+ Trussardi
50
+ Tsuji
51
+ Kira
52
+ Otoishi
53
+ Katagiri
54
+ Oyanagi
55
+ Kanedaichi
56
+ Miyamoto
57
+ Kinoto
58
+ Shopkeeper
59
+ Okura
60
+ Nakae
61
+ Murakami
62
+ Morishita
63
+ Yoshimura
64
+ Harada
65
+ Tachikawa
66
+ Yamashita
67
+ Yoshizawa
68
+ Giovanna
69
+ Bucciarati
70
+ Abbacchio
71
+ Mista
72
+ Ghirga
73
+ Fugo
74
+ Una
75
+ Jumbo
76
+ Doppio
77
+ Zucchero
78
+ Nero
79
+ Rossi
80
+ Menini
81
+ Ultello
82
+ Cujoh
83
+ Costello
84
+ Alnino
85
+ Fighters
86
+ Bluemarine
87
+ Anasui
88
+ Garden
89
+ Pucci
90
+ Versus
91
+ Maxx
92
+ McQueen
93
+ Rangler
94
+ Westwood
95
+ Miuller
96
+ Lawyer
97
+ Jisso
98
+ Likir
99
+ Steel
100
+ Pants
101
+ Tim
102
+ Valentine
103
+ Blackmore
104
+ Roadagain
105
+ RO
106
+ Magent
107
+ Ferdinand
108
+ Boomboom
109
+ Robinson
110
+ Mountain
111
+ Avdul
112
+ Han
113
+ Roocatugo
114
+ Becker
115
+ Hagen
116
+ Lukather
117
+ Chicken
118
+ Mondatta
119
+ Yaga
120
+ Sloop
121
+ White
122
+ Porgie
123
+ Mamezuku
124
+ Sakunami
125
+ Akefu
126
+ Damo
127
+ Yagiyama
128
+ Dainenjiyama
129
+ Guerrilla
130
+ Do
131
+ Tomoki
132
+ Dadada
133
+ Oblada
134
+ Gaga
135
+ Clip
136
+ Sasame
137
+ Kitani
138
+ Iwakiri
139
+ Nigatake
140
+ Nanami
141
+ Izumi
142
+ Kaigamori
143
+ Osato
144
+ Kamafusa
145
+ Yamamura
146
+ Mochizuki
147
+ Rabbit
148
+ Katahira
149
+ Hashimoto
150
+ Hayamura
151
+ Murase
152
+ Giannini
153
+ Sawaki
@@ -0,0 +1,149 @@
1
+ Anubis
2
+ Atum
3
+ Bastet
4
+ Cream
5
+ Death Thirteen
6
+ Geb
7
+ High Priestess
8
+ Horus
9
+ Judgement
10
+ Khnum
11
+ Osiris
12
+ Sethan
13
+ Tenore Sax
14
+ Tohth
15
+ Dark Blue Moon
16
+ Emperor
17
+ Ebony Devil
18
+ Empress
19
+ Hanged Man
20
+ Hermit Purple
21
+ Hierophant Green
22
+ Justice
23
+ Lovers
24
+ Magician's Red
25
+ Silver Chariot
26
+ Star Platinum
27
+ Strength
28
+ Sun
29
+ The Fool
30
+ The World
31
+ Tower of Gray
32
+ Wheel of Fortune
33
+ Yellow Temperance
34
+ Achtung Baby
35
+ Aqua Necklace
36
+ Atom Heart Father
37
+ Bad Company
38
+ Boy II Man
39
+ Cheap Trick
40
+ Cinderella
41
+ Crazy Diamond
42
+ Enigma
43
+ Earth Wind and Fire
44
+ Harvest
45
+ Heaven's Door
46
+ Highway Star
47
+ Killer Queen
48
+ Sheer Heart Attack
49
+ Bites the Dust
50
+ Love Deluxe
51
+ Pearl Jam
52
+ Ratt
53
+ Red Hot Chili Pepper
54
+ Super Fly
55
+ Surface
56
+ The Lock
57
+ The Hand
58
+ Stray Cat
59
+ Black Sabbath
60
+ Baby Face
61
+ Gold Experience
62
+ Sticky Fingers
63
+ Metallica
64
+ Purple Haze
65
+ Moody Blues
66
+ Sex Pistols
67
+ The Grateful Dead
68
+ Aerosmith
69
+ Beach Boy
70
+ Man in the Mirror
71
+ Baby Face (GoGo)
72
+ Chariot Requiem
73
+ Clash
74
+ Echoes
75
+ Gold Experience Requiem
76
+ Green Day
77
+ King Crimson
78
+ Kraft Work
79
+ Little Feet
80
+ Mr.President
81
+ Notorious B.I.G
82
+ Oasis
83
+ Rolling Stones
84
+ Soft Machine
85
+ Spice Girl
86
+ Talking Head
87
+ White Album
88
+ Whitesnake
89
+ C-Moon
90
+ Jail House Lock
91
+ Stone Free
92
+ Goo Goo Dolls
93
+ Under World
94
+ Sky High
95
+ Star Platinum
96
+ Bohemian Rhapsody
97
+ Burning Down the House
98
+ Diver Down
99
+ Dragon's Dream
100
+ Foo Fighters
101
+ Green
102
+ Highway to Hell
103
+ Kiss
104
+ Jumpin' Jack Flash
105
+ Limp Bizkit
106
+ Made in Heaven
107
+ Manhattan Transfer
108
+ Marilyn Manson
109
+ Planet Waves
110
+ Survivor
111
+ Weather Report
112
+ Yo-Yo Ma
113
+ 20th Century Boy
114
+ Ball Breaker
115
+ Boku no Rhythm wo Kiitekure
116
+ Catch the Rainbow
117
+ Chocolate Disco
118
+ Civil War
119
+ Cream Starter
120
+ Dirty Deeds Done Dirt Cheap
121
+ D4C Love Train
122
+ Hey Ya!
123
+ In a Silent Way
124
+ Mandom
125
+ Oh! Lonesome Me
126
+ Scary Monsters
127
+ Sugar Mountain
128
+ Tatoo You!
129
+ Ticket to Ride
130
+ Tomb of the Boom
131
+ Tubular Bells
132
+ Tusk
133
+ Wired
134
+ Born This Way
135
+ California King Bed
136
+ Fun Fun Fun
137
+ Nut King Call
138
+ Paisley Park
139
+ Paper Moon King
140
+ Soft & Wet
141
+ Manic Depression
142
+ Voodoo Child
143
+ All Along Watchtower
144
+ Dolly Dagger
145
+ Nightbird Flying
146
+ Purple Haze Distortion
147
+ Rainy Day Dream Away
148
+ Remote Romance
149
+ House of Holy
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'date'
4
+
5
+ module FFaker
6
+ module Date
7
+ extend FFaker::ModuleUtils
8
+ extend self
9
+
10
+ # Generates a random date between 2 dates
11
+ def between(from, to)
12
+ FFaker::Time.between(from, to).to_date
13
+ end
14
+
15
+ # Generates a random date up to `days` days in the past
16
+ def backward(days = 365)
17
+ from = ::Date.today - days
18
+ to = ::Date.today - 1
19
+
20
+ between(from, to)
21
+ end
22
+
23
+ # Generates a random date up to `days` days in the future
24
+ def forward(days = 365)
25
+ from = ::Date.today + 1
26
+ to = ::Date.today + days
27
+
28
+ between(from, to)
29
+ end
30
+ end
31
+ end
@@ -51,8 +51,8 @@ module FFaker
51
51
  latitude_range = [upper_left[0], lower_right[0]].sort
52
52
  longitude_range = [upper_left[1], lower_right[1]].sort
53
53
 
54
- latitude = latitude_range[0] + rand * (latitude_range[1] - latitude_range[0])
55
- longitude = longitude_range[0] + rand * (longitude_range[1] - longitude_range[0])
54
+ latitude = latitude_range[0] + (rand * (latitude_range[1] - latitude_range[0]))
55
+ longitude = longitude_range[0] + (rand * (longitude_range[1] - longitude_range[0]))
56
56
 
57
57
  [latitude, longitude]
58
58
  end
@@ -71,7 +71,7 @@ module FFaker
71
71
  if document_digits.size + 1 == verification_multipliers.size && document_digits.uniq.size > 1
72
72
  0.upto(1) do |i|
73
73
  sum = verification_multipliers.drop(1 - i).each_with_index.inject(0) do |val, (value, j)|
74
- val + document_digits[j] * value
74
+ val + (document_digits[j] * value)
75
75
  end
76
76
  validation_digits[i] = (sum %= 11) < 2 ? 0 : 11 - sum
77
77
  document_digits.push(validation_digits[i])
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FFaker
4
+ module IdentificationEC
5
+ extend ModuleUtils
6
+ extend self
7
+
8
+ # https://medium.com/@bryansuarez/c%C3%B3mo-validar-c%C3%A9dula-y-ruc-en-ecuador-b62c5666186f
9
+ # Cedula de Identificacion
10
+ def ci
11
+ first_digits = ci_digits
12
+ "#{first_digits}#{last_digit(first_digits)}"
13
+ end
14
+
15
+ private
16
+
17
+ def ci_digits
18
+ "#{FFaker.numerify('##')}#{rand(0..5)}#{FFaker.numerify('######')}"
19
+ end
20
+
21
+ def last_digit(digits)
22
+ mod = digits_sum(digits) % 10
23
+ 10 - mod if mod > 0
24
+ end
25
+
26
+ def digits_sum(digits)
27
+ sum = 0
28
+ digits.chars.each_with_index do |char, index|
29
+ if index.even?
30
+ multiple = char.to_i * 2
31
+ sum += multiple > 9 ? multiple - 9 : multiple
32
+ else
33
+ sum += char.to_i
34
+ end
35
+ end
36
+ sum
37
+ end
38
+ end
39
+ end
@@ -20,10 +20,10 @@ module FFaker
20
20
  private
21
21
 
22
22
  def dv(rut)
23
- total = rut.to_s.rjust(8, '0').split(//).zip(%w[3 2 7 6 5 4 3 2]).sum do |a, b|
23
+ total = rut.to_s.rjust(8, '0').split('').zip(%w[3 2 7 6 5 4 3 2]).sum do |a, b|
24
24
  a.to_i * b.to_i
25
25
  end
26
- (11 - total % 11).to_s.gsub(/10/, 'k').gsub(/11/, '0')
26
+ (11 - (total % 11)).to_s.gsub('10', 'k').gsub('11', '0')
27
27
  end
28
28
  end
29
29
  end
@@ -32,7 +32,7 @@ module FFaker
32
32
  end
33
33
 
34
34
  def expedition_date
35
- today = Date.today
35
+ today = ::Date.today
36
36
  today - rand(today.year)
37
37
  end
38
38
  end
@@ -8,11 +8,11 @@ module FFaker
8
8
  # Resident Registration Number
9
9
  # http://ko.wikipedia.org/wiki/%EC%A3%BC%EB%AF%BC%EB%93%B1%EB%A1%9D%EB%B2%88%ED%98%B8
10
10
  def rrn
11
- birth = fetch_sample(Date.new(1970, 1, 1)..Date.new(1999, 12, 31)).strftime('%y%d%m')
11
+ birth = fetch_sample(::Date.new(1970, 1, 1)..::Date.new(1999, 12, 31)).strftime('%y%d%m')
12
12
  sex = fetch_sample([1, 2])
13
13
  loc = FFaker.numerify("#{fetch_sample(Array('00'..'95'))}###")
14
- a, b, c, d, e, f, g, h, i, j, k, l = "#{birth}#{sex}#{loc}".split(//).map(&:to_i)
15
- checksum = (11 - (2 * a + 3 * b + 4 * c + 5 * d + 6 * e + 7 * f + 8 * g + 9 * h + 2 * i + 3 * j + 4 * k + 5 * l) % 11) % 10
14
+ a, b, c, d, e, f, g, h, i, j, k, l = "#{birth}#{sex}#{loc}".split('').map(&:to_i)
15
+ checksum = (11 - (((2 * a) + (3 * b) + (4 * c) + (5 * d) + (6 * e) + (7 * f) + (8 * g) + (9 * h) + (2 * i) + (3 * j) + (4 * k) + (5 * l)) % 11)) % 10
16
16
  "#{birth}-#{sex}#{loc}#{checksum}"
17
17
  end
18
18
  end
@@ -37,8 +37,8 @@ module FFaker
37
37
  private
38
38
 
39
39
  def generate_valid_pesel_date
40
- from = Date.new(1800, 1, 1)
41
- to = [Date.today, Date.new(2299, 12, 31)].min
40
+ from = ::Date.new(1800, 1, 1)
41
+ to = [::Date.today, ::Date.new(2299, 12, 31)].min
42
42
  fetch_sample(from..to)
43
43
  end
44
44
 
@@ -65,13 +65,13 @@ module FFaker
65
65
  def pesel_checksum(date, serial_number)
66
66
  pesel_digits = "#{date}#{serial_number}".split('').map(&:to_i)
67
67
  a, b, c, d, e, f, g, h, i, j = pesel_digits
68
- (a * 9 + b * 7 + c * 3 + d + e * 9 + f * 7 + g * 3 + h + i * 9 + j * 7) % 10
68
+ ((a * 9) + (b * 7) + (c * 3) + d + (e * 9) + (f * 7) + (g * 3) + h + (i * 9) + (j * 7)) % 10
69
69
  end
70
70
 
71
71
  def identity_card_checksum(letter_part, number_part)
72
72
  a, b, c = letter_part.codepoints.map { |codepoints| codepoints - 55 }
73
73
  d, e, f, g, h = number_part.split('').map(&:to_i)
74
- (a * 7 + b * 3 + c + 7 * d + 3 * e + f + 7 * g + 3 * h) % 10
74
+ ((a * 7) + (b * 3) + c + (7 * d) + (3 * e) + f + (7 * g) + (3 * h)) % 10
75
75
  end
76
76
  end
77
77
  end
@@ -17,7 +17,7 @@ module FFaker
17
17
  serial = FFaker.numerify('#######')
18
18
  a, b, c, d, e, f, g, h, i, j = "#{code}#{gender}#{serial}".chars.map(&:to_i)
19
19
 
20
- checksum = (9 * a + b + 2 * c + 3 * d + 4 * e + 5 * f + 6 * g + 7 * h + 8 * i + 9 * j) % 10
20
+ checksum = ((9 * a) + b + (2 * c) + (3 * d) + (4 * e) + (5 * f) + (6 * g) + (7 * h) + (8 * i) + (9 * j)) % 10
21
21
  "#{letter.upcase}#{gender}#{serial}#{checksum}"
22
22
  end
23
23
  end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FFaker
4
+ module JoJo
5
+ extend ModuleUtils
6
+ extend self
7
+
8
+ def full_name
9
+ fetch_sample(FULL_NAMES)
10
+ end
11
+
12
+ def first_name
13
+ fetch_sample(FIRST_NAMES)
14
+ end
15
+
16
+ def last_name
17
+ fetch_sample(LAST_NAMES)
18
+ end
19
+
20
+ def stand
21
+ fetch_sample(STANDS)
22
+ end
23
+ end
24
+ end