ffaker 2.6.0 → 2.7.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 +5 -0
- data/README.md +8 -0
- data/REFERENCE.md +21 -1
- data/Rakefile +1 -1
- data/ffaker.gemspec +6 -6
- data/lib/ffaker.rb +2 -2
- data/lib/ffaker/address.rb +9 -9
- data/lib/ffaker/address_au.rb +2 -2
- data/lib/ffaker/address_br.rb +2 -2
- data/lib/ffaker/address_ca.rb +2 -2
- data/lib/ffaker/address_da.rb +2 -2
- data/lib/ffaker/address_de.rb +2 -2
- data/lib/ffaker/address_fi.rb +1 -2
- data/lib/ffaker/address_fr.rb +1 -1
- data/lib/ffaker/address_gr.rb +2 -2
- data/lib/ffaker/address_id.rb +1 -1
- data/lib/ffaker/address_in.rb +3 -5
- data/lib/ffaker/address_kr.rb +9 -8
- data/lib/ffaker/address_mx.rb +2 -2
- data/lib/ffaker/address_nl.rb +1 -1
- data/lib/ffaker/address_pl.rb +5 -5
- data/lib/ffaker/address_ru.rb +1 -1
- data/lib/ffaker/address_ua.rb +3 -3
- data/lib/ffaker/address_us.rb +2 -2
- data/lib/ffaker/avatar.rb +1 -1
- data/lib/ffaker/book.rb +2 -2
- data/lib/ffaker/boolean.rb +1 -1
- data/lib/ffaker/cheesy_lingo.rb +2 -2
- data/lib/ffaker/color.rb +2 -2
- data/lib/ffaker/company.rb +6 -6
- data/lib/ffaker/company_cn.rb +2 -2
- data/lib/ffaker/company_it.rb +18 -2
- data/lib/ffaker/company_se.rb +4 -4
- data/lib/ffaker/data/company_it/piva_office_codes +99 -0
- data/lib/ffaker/education.rb +8 -8
- data/lib/ffaker/filesystem.rb +3 -3
- data/lib/ffaker/food.rb +1 -1
- data/lib/ffaker/gender.rb +1 -1
- data/lib/ffaker/gender_br.rb +1 -1
- data/lib/ffaker/gender_cn.rb +1 -1
- data/lib/ffaker/gender_id.rb +1 -1
- data/lib/ffaker/gender_kr.rb +1 -1
- data/lib/ffaker/html_ipsum.rb +4 -4
- data/lib/ffaker/identification.rb +1 -1
- data/lib/ffaker/identification_br.rb +1 -1
- data/lib/ffaker/identification_es.rb +1 -1
- data/lib/ffaker/identification_es_cl.rb +2 -2
- data/lib/ffaker/identification_es_co.rb +5 -5
- data/lib/ffaker/identification_mx.rb +4 -4
- data/lib/ffaker/internet.rb +9 -9
- data/lib/ffaker/internet_se.rb +6 -8
- data/lib/ffaker/job_fr.rb +2 -2
- data/lib/ffaker/lorem.rb +2 -2
- data/lib/ffaker/lorem_ar.rb +2 -2
- data/lib/ffaker/lorem_cn.rb +2 -2
- data/lib/ffaker/lorem_fr.rb +2 -2
- data/lib/ffaker/lorem_kr.rb +2 -2
- data/lib/ffaker/lorem_ru.rb +2 -2
- data/lib/ffaker/lorem_ua.rb +3 -3
- data/lib/ffaker/movie.rb +7 -7
- data/lib/ffaker/name.rb +4 -11
- data/lib/ffaker/name_br.rb +2 -2
- data/lib/ffaker/name_cs.rb +13 -11
- data/lib/ffaker/name_da.rb +3 -3
- data/lib/ffaker/name_de.rb +2 -2
- data/lib/ffaker/name_fr.rb +2 -4
- data/lib/ffaker/name_ga.rb +3 -10
- data/lib/ffaker/name_gr.rb +3 -3
- data/lib/ffaker/name_id.rb +2 -2
- data/lib/ffaker/name_it.rb +3 -6
- data/lib/ffaker/name_mx.rb +8 -8
- data/lib/ffaker/name_nb.rb +3 -4
- data/lib/ffaker/name_nl.rb +5 -5
- data/lib/ffaker/name_ph.rb +4 -6
- data/lib/ffaker/name_pl.rb +4 -4
- data/lib/ffaker/name_ru.rb +14 -12
- data/lib/ffaker/name_se.rb +3 -4
- data/lib/ffaker/name_sn.rb +13 -19
- data/lib/ffaker/name_ua.rb +1 -1
- data/lib/ffaker/nato_alphabet.rb +2 -2
- data/lib/ffaker/phone_number.rb +16 -16
- data/lib/ffaker/phone_number_au.rb +7 -7
- data/lib/ffaker/phone_number_br.rb +7 -7
- data/lib/ffaker/phone_number_ch.rb +7 -7
- data/lib/ffaker/phone_number_cu.rb +10 -10
- data/lib/ffaker/phone_number_de.rb +2 -2
- data/lib/ffaker/phone_number_fr.rb +4 -4
- data/lib/ffaker/phone_number_id.rb +1 -1
- data/lib/ffaker/phone_number_kr.rb +4 -4
- data/lib/ffaker/phone_number_mx.rb +2 -2
- data/lib/ffaker/phone_number_nl.rb +3 -3
- data/lib/ffaker/phone_number_se.rb +3 -3
- data/lib/ffaker/phone_number_sg.rb +1 -1
- data/lib/ffaker/phone_number_sn.rb +5 -5
- data/lib/ffaker/product.rb +9 -9
- data/lib/ffaker/ssn_se.rb +4 -4
- data/lib/ffaker/string.rb +3 -3
- data/lib/ffaker/time.rb +6 -1
- data/lib/ffaker/utils/module_utils.rb +5 -0
- data/lib/ffaker/utils/unique_utils.rb +45 -0
- data/lib/ffaker/vehicle.rb +5 -5
- data/scripts/reference.rb +1 -1
- data/test/test_address_gr.rb +5 -5
- data/test/test_address_ja.rb +2 -1
- data/test/test_address_kr.rb +1 -0
- data/test/test_array_utils.rb +3 -3
- data/test/test_color.rb +1 -1
- data/test/test_company_it.rb +5 -1
- data/test/test_identification_es_mx.rb +1 -1
- data/test/test_module_utils.rb +1 -1
- data/test/test_name_ar.rb +4 -6
- data/test/test_name_cs.rb +2 -2
- data/test/test_name_ja.rb +2 -2
- data/test/test_name_ru.rb +2 -2
- data/test/test_phone_number.rb +2 -2
- data/test/test_string.rb +1 -1
- data/test/test_time.rb +9 -1
- data/test/test_unique_utils.rb +54 -0
- metadata +6 -2
data/lib/ffaker/phone_number.rb
CHANGED
@@ -6,24 +6,24 @@ module FFaker
|
|
6
6
|
extend self
|
7
7
|
|
8
8
|
def phone_number
|
9
|
-
FFaker.numerify case rand(
|
10
|
-
when
|
11
|
-
when
|
12
|
-
when
|
9
|
+
FFaker.numerify case rand(0..19)
|
10
|
+
when 0 then "#{area_code}-#{exchange_code}-#### x#####"
|
11
|
+
when 1 then "#{area_code}-#{exchange_code}-#### x####"
|
12
|
+
when 2 then "#{area_code}-#{exchange_code}-#### x###"
|
13
13
|
when 3..4 then "#{area_code}-#{exchange_code}-####"
|
14
|
-
when
|
15
|
-
when
|
16
|
-
when
|
14
|
+
when 5 then "#{area_code}.#{exchange_code}.#### x#####"
|
15
|
+
when 6 then "#{area_code}.#{exchange_code}.#### x####"
|
16
|
+
when 7 then "#{area_code}.#{exchange_code}.#### x###"
|
17
17
|
when 8..9 then "#{area_code}.#{exchange_code}.####"
|
18
|
-
when
|
19
|
-
when
|
20
|
-
when
|
18
|
+
when 10 then "(#{area_code})#{exchange_code}-#### x#####"
|
19
|
+
when 11 then "(#{area_code})#{exchange_code}-#### x####"
|
20
|
+
when 12 then "(#{area_code})#{exchange_code}-#### x###"
|
21
21
|
when 13..14 then "(#{area_code})#{exchange_code}-####"
|
22
|
-
when
|
23
|
-
when
|
24
|
-
when
|
22
|
+
when 15 then "1-#{area_code}-#{exchange_code}-#### x#####"
|
23
|
+
when 16 then "1-#{area_code}-#{exchange_code}-#### x####"
|
24
|
+
when 17 then "1-#{area_code}-#{exchange_code}-#### x###"
|
25
25
|
when 18..19 then "1-#{area_code}-#{exchange_code}-####"
|
26
|
-
|
26
|
+
end
|
27
27
|
end
|
28
28
|
|
29
29
|
def area_code
|
@@ -55,8 +55,8 @@ module FFaker
|
|
55
55
|
# IMEI Format:
|
56
56
|
# AA-BBBBBB-CCCCCC-D
|
57
57
|
characters = Array.new(15, 0)
|
58
|
-
rbi_codes = %w
|
59
|
-
serial_number ||= rand(1_000_000)
|
58
|
+
rbi_codes = %w[01 10 30 33 35 44 45 49 50 51 52 53 54 86 91 98 99]
|
59
|
+
serial_number ||= rand(0...1_000_000)
|
60
60
|
serial_number = format('%06d', serial_number).chars.map(&:to_i)
|
61
61
|
first_two_chars = fetch_sample(rbi_codes)
|
62
62
|
characters[0, 2] = first_two_chars.chars.map(&:to_i)
|
@@ -8,10 +8,10 @@ module FFaker
|
|
8
8
|
extend self
|
9
9
|
|
10
10
|
# Mobile prefixes
|
11
|
-
MobileOperatorsPrefix = %w
|
11
|
+
MobileOperatorsPrefix = %w[04 05].freeze
|
12
12
|
|
13
13
|
# Home or Work Operator prefixes
|
14
|
-
HomeWorkOperatorsPrefix = %w
|
14
|
+
HomeWorkOperatorsPrefix = %w[02 03 07 08].freeze
|
15
15
|
|
16
16
|
OperatorsPrefix = MobileOperatorsPrefix + HomeWorkOperatorsPrefix
|
17
17
|
|
@@ -19,18 +19,18 @@ module FFaker
|
|
19
19
|
# @see FFaker::PhoneNumberAU::MobileOperatorsPrefix
|
20
20
|
#
|
21
21
|
def mobile_phone_prefix
|
22
|
-
|
22
|
+
fetch_sample(MobileOperatorsPrefix)
|
23
23
|
end
|
24
24
|
|
25
25
|
# Return a prefix in HomeWorkOperatorsPrefix
|
26
26
|
# @see FFaker::PhoneNumberAU::HomeWorkOperatorsPrefix
|
27
27
|
#
|
28
28
|
def home_work_phone_prefix
|
29
|
-
|
29
|
+
fetch_sample(HomeWorkOperatorsPrefix)
|
30
30
|
end
|
31
31
|
|
32
32
|
def phone_prefix
|
33
|
-
|
33
|
+
fetch_sample(OperatorsPrefix)
|
34
34
|
end
|
35
35
|
|
36
36
|
# Generates a general phone number
|
@@ -49,7 +49,7 @@ module FFaker
|
|
49
49
|
|
50
50
|
# generates mobile or home/work number
|
51
51
|
def phone_number
|
52
|
-
case rand(
|
52
|
+
case rand(0..1)
|
53
53
|
when 0 then home_work_phone_number
|
54
54
|
when 1 then mobile_phone_number
|
55
55
|
end
|
@@ -68,7 +68,7 @@ module FFaker
|
|
68
68
|
end
|
69
69
|
|
70
70
|
def international_phone_number
|
71
|
-
case rand(
|
71
|
+
case rand(0..1)
|
72
72
|
when 0 then international_mobile_phone_number
|
73
73
|
when 1 then international_home_work_phone_number
|
74
74
|
end
|
@@ -9,15 +9,15 @@ module FFaker
|
|
9
9
|
extend self
|
10
10
|
|
11
11
|
COUNTRY_PREFIX = '+55'.freeze
|
12
|
-
AREA_CODE = %w
|
13
|
-
HOME_WORK_PHONE_PREFIX = %w
|
14
|
-
MOBILE_PHONE_PREFIX = %w
|
15
|
-
PHONE_NUMBER = %w
|
12
|
+
AREA_CODE = %w[1# 2# 3# 4# 5# 6# 7# 8# 9#].freeze
|
13
|
+
HOME_WORK_PHONE_PREFIX = %w[2 3 4 5].freeze
|
14
|
+
MOBILE_PHONE_PREFIX = %w[6 7 8 9 96 97 98 99].freeze
|
15
|
+
PHONE_NUMBER = %w[####### ###-####].freeze
|
16
16
|
|
17
17
|
# generate a random phone number
|
18
18
|
#
|
19
19
|
def phone_number
|
20
|
-
case rand(
|
20
|
+
case rand(0..1)
|
21
21
|
when 0 then home_work_phone_number
|
22
22
|
when 1 then mobile_phone_number
|
23
23
|
end
|
@@ -34,7 +34,7 @@ module FFaker
|
|
34
34
|
# pick a random phone number with the international prefix code
|
35
35
|
#
|
36
36
|
def international_phone_number
|
37
|
-
case rand(
|
37
|
+
case rand(0..1)
|
38
38
|
when 0 then international_mobile_phone_number
|
39
39
|
when 1 then international_home_work_phone_number
|
40
40
|
end
|
@@ -69,7 +69,7 @@ module FFaker
|
|
69
69
|
end
|
70
70
|
|
71
71
|
def random_space
|
72
|
-
rand(
|
72
|
+
rand(0..1) == 1 ? ' ' : ''
|
73
73
|
end
|
74
74
|
end
|
75
75
|
end
|
@@ -5,16 +5,16 @@ module FFaker
|
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
COUNTRY_PREFIX = %w
|
9
|
-
AREA_PREFIX = %w
|
10
|
-
MOBILE_PREFIX = %w
|
11
|
-
FREE_PHONE_PREFIX = %w
|
12
|
-
SHARED_COST_PREFIX = %w
|
13
|
-
PREMIUM_RATE_PREFIX = %w
|
8
|
+
COUNTRY_PREFIX = %w[+41 0041 0].freeze
|
9
|
+
AREA_PREFIX = %w[21 22 24 26 27 31 32 33 34 41 43 44 51 52 56 58 61 62 71 81 91].freeze
|
10
|
+
MOBILE_PREFIX = %w[74 75 76 77 78 79].freeze
|
11
|
+
FREE_PHONE_PREFIX = %w[800].freeze
|
12
|
+
SHARED_COST_PREFIX = %w[840 842 844 848].freeze
|
13
|
+
PREMIUM_RATE_PREFIX = %w[900 901 906].freeze
|
14
14
|
PHONE_NUMBER = ['#######', ' ### ## ##'].freeze
|
15
15
|
|
16
16
|
def phone_number
|
17
|
-
case rand(
|
17
|
+
case rand(0..4)
|
18
18
|
when 0 then home_work_phone_number
|
19
19
|
when 1 then mobile_phone_number
|
20
20
|
when 2 then free_phone_number
|
@@ -6,10 +6,10 @@ module FFaker
|
|
6
6
|
extend self
|
7
7
|
|
8
8
|
# Mobile prefixes
|
9
|
-
MobileOperatorsPrefix = %w
|
9
|
+
MobileOperatorsPrefix = %w[05].freeze
|
10
10
|
|
11
11
|
# Home or Work Operator prefixes
|
12
|
-
HomeWorkOperatorsPrefix = %w
|
12
|
+
HomeWorkOperatorsPrefix = %w[021 022 023 024 031 032 033 041 042 043 045 046 047 048 07].freeze
|
13
13
|
|
14
14
|
OperatorsPrefix = MobileOperatorsPrefix + HomeWorkOperatorsPrefix
|
15
15
|
|
@@ -17,18 +17,18 @@ module FFaker
|
|
17
17
|
# @see FFaker::PhoneNumberCU::MobileOperatorsPrefix
|
18
18
|
#
|
19
19
|
def mobile_phone_prefix
|
20
|
-
|
20
|
+
fetch_sample(MobileOperatorsPrefix)
|
21
21
|
end
|
22
22
|
|
23
23
|
# Return a prefix in HomeWorkOperatorsPrefix
|
24
24
|
# @see FFaker::PhoneNumberCU::HomeWorkOperatorsPrefix
|
25
25
|
#
|
26
26
|
def home_work_phone_prefix
|
27
|
-
|
27
|
+
fetch_sample(HomeWorkOperatorsPrefix)
|
28
28
|
end
|
29
29
|
|
30
30
|
def phone_prefix
|
31
|
-
|
31
|
+
fetch_sample(OperatorsPrefix)
|
32
32
|
end
|
33
33
|
|
34
34
|
# Generates a general phone number
|
@@ -52,7 +52,7 @@ module FFaker
|
|
52
52
|
# Generates general number
|
53
53
|
#
|
54
54
|
def general_phone_number
|
55
|
-
case rand(
|
55
|
+
case rand(0..1)
|
56
56
|
when 0 then home_work_phone_number
|
57
57
|
when 1 then mobile_phone_number
|
58
58
|
end
|
@@ -67,7 +67,7 @@ module FFaker
|
|
67
67
|
# International formats
|
68
68
|
#
|
69
69
|
def international_country_code
|
70
|
-
case rand(
|
70
|
+
case rand(0..1)
|
71
71
|
when 0 then "00#{country_code}"
|
72
72
|
when 1 then "+#{country_code}"
|
73
73
|
end
|
@@ -86,7 +86,7 @@ module FFaker
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def international_phone_number
|
89
|
-
case rand(
|
89
|
+
case rand(0..1)
|
90
90
|
when 0 then international_mobile_phone_number
|
91
91
|
when 1 then international_home_work_phone_number
|
92
92
|
end
|
@@ -112,7 +112,7 @@ module FFaker
|
|
112
112
|
end
|
113
113
|
|
114
114
|
def e164_phone_number
|
115
|
-
case rand(
|
115
|
+
case rand(0..1)
|
116
116
|
when 0 then e164_mobile_phone_number
|
117
117
|
when 1 then e164_home_work_phone_number
|
118
118
|
end
|
@@ -121,7 +121,7 @@ module FFaker
|
|
121
121
|
# Generates phone number
|
122
122
|
#
|
123
123
|
def phone_number
|
124
|
-
case rand(
|
124
|
+
case rand(0..2)
|
125
125
|
when 0 then general_phone_number
|
126
126
|
when 1 then international_phone_number
|
127
127
|
when 2 then e164_phone_number
|
@@ -8,14 +8,14 @@ module FFaker
|
|
8
8
|
|
9
9
|
# Mobile prefixes are in the 015x, 016x, 017x ranges
|
10
10
|
def mobile_prefix(leading_zero = true)
|
11
|
-
mobile_prefix = '1' +
|
11
|
+
mobile_prefix = '1' + rand(5..7).to_s + rand(0..9).to_s
|
12
12
|
mobile_prefix = '0' + mobile_prefix if leading_zero
|
13
13
|
mobile_prefix
|
14
14
|
end
|
15
15
|
|
16
16
|
# Region prefixes are in range 02..09 with length of 3 to 5 digits
|
17
17
|
def region_prefix(leading_zero = true)
|
18
|
-
region_prefix =
|
18
|
+
region_prefix = rand(2..9).to_s + FFaker.numerify('#' * rand(1..3)).to_s
|
19
19
|
region_prefix = '0' + region_prefix if leading_zero
|
20
20
|
region_prefix
|
21
21
|
end
|
@@ -5,13 +5,13 @@ module FFaker
|
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
COUNTRY_PREFIX = %w
|
9
|
-
AREA_PREFIX = %w
|
10
|
-
MOBILE_PREFIX = %w
|
8
|
+
COUNTRY_PREFIX = %w[+33 0033 0].freeze
|
9
|
+
AREA_PREFIX = %w[1 2 3 4 5].freeze
|
10
|
+
MOBILE_PREFIX = %w[6 7].freeze
|
11
11
|
PHONE_NUMBER = ['########', ' ## ## ## ##'].freeze
|
12
12
|
|
13
13
|
def phone_number
|
14
|
-
case rand(
|
14
|
+
case rand(0..1)
|
15
15
|
when 0 then home_work_phone_number
|
16
16
|
when 1 then mobile_phone_number
|
17
17
|
end
|
@@ -6,11 +6,11 @@ module FFaker
|
|
6
6
|
extend self
|
7
7
|
|
8
8
|
HOME_PHONE_PREFIXES =
|
9
|
-
%w
|
10
|
-
MOBILE_PHONE_PREFIXES = %w
|
9
|
+
%w[02 031 032 033 041 042 043 044 049 051 052 053 054 055 061 062 063 064].freeze
|
10
|
+
MOBILE_PHONE_PREFIXES = %w[010 011 016 019].freeze
|
11
11
|
|
12
12
|
def phone_number
|
13
|
-
case rand(
|
13
|
+
case rand(0..1)
|
14
14
|
when 0 then home_work_phone_number
|
15
15
|
when 1 then mobile_phone_number
|
16
16
|
end
|
@@ -41,7 +41,7 @@ module FFaker
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def international_phone_number
|
44
|
-
case rand(
|
44
|
+
case rand(0..1)
|
45
45
|
when 0 then international_mobile_phone_number
|
46
46
|
when 1 then international_home_work_phone_number
|
47
47
|
end
|
@@ -22,7 +22,7 @@ module FFaker
|
|
22
22
|
|
23
23
|
# generates mobile or home/work number
|
24
24
|
def phone_number
|
25
|
-
case rand(
|
25
|
+
case rand(0..1)
|
26
26
|
when 0 then home_work_phone_number
|
27
27
|
when 1 then mobile_phone_number
|
28
28
|
end
|
@@ -41,7 +41,7 @@ module FFaker
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def international_phone_number
|
44
|
-
case rand(
|
44
|
+
case rand(0..1)
|
45
45
|
when 0 then international_mobile_phone_number
|
46
46
|
when 1 then international_home_work_phone_number
|
47
47
|
end
|
@@ -11,11 +11,11 @@ module FFaker
|
|
11
11
|
2 => ['#######', '### ####', '#### ###'],
|
12
12
|
3 => ['######', '#### ##', '## ## ##']
|
13
13
|
}.freeze
|
14
|
-
AREA_CODES = %w
|
14
|
+
AREA_CODES = %w[10 111 113 114 115 117 118 13 14 15 161 162 164 165 166 167 168 172 174 180 181 182 183 184 186 187 20 222 223 224 226 227 228 229 23 24 251 252 255 26 294 297 299 30 313 314 315 316 317 318 320 321 33 341 342 343 344 345 346 347 348 35 36 38 40 411 412 413 416 418 43 45 46 475 478 481 485 486 487 488 492 493 495 497 499 50 511 512 513 514 515 516 517 518 519 521 522 523 524 525 527 528 529 53 541 543 544 545 546 547 548 55 561 562 566 570 571 572 573 575 577 578 58 591 592 593 594 595 596 597 598 599 70 71 72 73 74 75 76 77 78 79].freeze
|
15
15
|
MOBILE_PHONE_NUMBER = ['########', ' ## ## ## ##', ' ### ### ##', ' #### ####'].freeze
|
16
16
|
|
17
17
|
def phone_number
|
18
|
-
case rand(
|
18
|
+
case rand(0..1)
|
19
19
|
when 0 then home_work_phone_number
|
20
20
|
when 1 then mobile_phone_number
|
21
21
|
end
|
@@ -31,7 +31,7 @@ module FFaker
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def international_phone_number
|
34
|
-
case rand(
|
34
|
+
case rand(0..1)
|
35
35
|
when 0 then international_mobile_phone_number
|
36
36
|
when 1 then international_home_work_phone_number
|
37
37
|
end
|
@@ -28,10 +28,10 @@ module FFaker
|
|
28
28
|
'%s-### ##'].freeze
|
29
29
|
MOBILE_PHONE_FORMAT = ['%s#-## ## ##', '%s#-######'].freeze
|
30
30
|
COUNTRY_PREFIX = ['+46', '0046'].freeze
|
31
|
-
MOBILE_PHONE_PREFIX = %w
|
31
|
+
MOBILE_PHONE_PREFIX = %w[70 72 73 76 74].freeze
|
32
32
|
|
33
33
|
def phone_number
|
34
|
-
case rand(
|
34
|
+
case rand(0..1)
|
35
35
|
when 0 then home_work_phone_number
|
36
36
|
when 1 then mobile_phone_number
|
37
37
|
end
|
@@ -46,7 +46,7 @@ module FFaker
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def international_phone_number
|
49
|
-
case rand(
|
49
|
+
case rand(0..1)
|
50
50
|
when 0 then international_mobile_phone_number
|
51
51
|
when 1 then international_home_work_phone_number
|
52
52
|
end
|
@@ -12,19 +12,19 @@ module FFaker
|
|
12
12
|
# 76 => Tigo
|
13
13
|
# 70 => Expresso
|
14
14
|
#
|
15
|
-
MobileOperatorsPrefix = %w
|
15
|
+
MobileOperatorsPrefix = %w[70 76 77].freeze
|
16
16
|
|
17
17
|
# Home or Work Operator prefixes
|
18
18
|
#
|
19
19
|
# 33 => Orange
|
20
20
|
#
|
21
|
-
HomeWorkOperatorsPrefix = %w
|
21
|
+
HomeWorkOperatorsPrefix = %w[33].freeze
|
22
22
|
|
23
23
|
# Return a prefix in MobileOperatorsPrefix
|
24
24
|
# @see FFaker::PhoneNumberSN::MobileOperatorsPrefix
|
25
25
|
#
|
26
26
|
def mobile_phone_prefix
|
27
|
-
MobileOperatorsPrefix
|
27
|
+
fetch_sample(MobileOperatorsPrefix)
|
28
28
|
end
|
29
29
|
|
30
30
|
# Return a prefix in HomeWorkOperatorsPrefix
|
@@ -58,13 +58,13 @@ module FFaker
|
|
58
58
|
# Example 33 906 29 05
|
59
59
|
#
|
60
60
|
def homework_number
|
61
|
-
"#{homework_phone_prefix}-#{
|
61
|
+
"#{homework_phone_prefix}-#{rand(8..9)}#{FFaker.numerify('##-##-##')}"
|
62
62
|
end
|
63
63
|
|
64
64
|
# Generates a random phone number mobile or home or work
|
65
65
|
#
|
66
66
|
def phone_number
|
67
|
-
case rand(
|
67
|
+
case rand(0..9)
|
68
68
|
when 0 then homework_number
|
69
69
|
when 9 then homework_number
|
70
70
|
when 3 then mobile_number
|
data/lib/ffaker/product.rb
CHANGED
@@ -5,26 +5,26 @@ module FFaker
|
|
5
5
|
extend ModuleUtils
|
6
6
|
extend self
|
7
7
|
|
8
|
-
B2 = %w
|
9
|
-
VOWELS = %w
|
10
|
-
START = %w
|
11
|
-
SUFFIX = %w
|
12
|
-
ADDON = %w
|
8
|
+
B2 = %w[nix cell sync func balt sche pod].freeze
|
9
|
+
VOWELS = %w[a e i o u ou ie y io].freeze
|
10
|
+
START = %w[tr br p ph].freeze
|
11
|
+
SUFFIX = %w[ck ns nce nt st ne re ffe ph].freeze
|
12
|
+
ADDON = %w[wood forge func].freeze
|
13
13
|
|
14
14
|
def brand
|
15
|
-
case rand(
|
15
|
+
case rand(0..11)
|
16
16
|
when (0..4) then fetch_sample(B1) + fetch_sample(B2)
|
17
17
|
when (5..10) then
|
18
18
|
[
|
19
19
|
fetch_sample(START), fetch_sample(VOWELS), fetch_sample(SUFFIX),
|
20
|
-
rand(
|
20
|
+
rand(0..1).zero? ? fetch_sample(ADDON) : nil
|
21
21
|
].join.capitalize
|
22
22
|
when 11 then letters(2..3).to_s
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
def product_name
|
27
|
-
case rand(
|
27
|
+
case rand(0..1)
|
28
28
|
when 0 then "#{fetch_sample(ADJ)} #{fetch_sample(NOUN)}"
|
29
29
|
when 1 then "#{[fetch_sample(ADJ), fetch_sample(ADJ)].uniq.join(' ')} #{fetch_sample(NOUN)}"
|
30
30
|
end
|
@@ -40,7 +40,7 @@ module FFaker
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def model
|
43
|
-
case rand(
|
43
|
+
case rand(0..1)
|
44
44
|
when 0 then "#{fetch_sample(LETTERS).upcase}#{rand(90)}" # N90
|
45
45
|
when 1 then "#{letters(1..rand(1..2))}-#{rand(9900)}" # N-9400
|
46
46
|
end
|