ffaker 2.21.0 → 2.22.0

Sign up to get free protection for your applications and to get access to all the features.
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