ffaker 2.17.0 → 2.18.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 +10 -0
- data/README.md +6 -4
- data/REFERENCE.md +1317 -1269
- data/Rakefile +3 -3
- data/ffaker.gemspec +3 -3
- data/lib/ffaker.rb +3 -0
- data/lib/ffaker/address_ch.rb +0 -2
- data/lib/ffaker/address_ch_de.rb +0 -2
- data/lib/ffaker/address_ch_fr.rb +0 -2
- data/lib/ffaker/address_ch_it.rb +0 -2
- data/lib/ffaker/address_da.rb +0 -2
- data/lib/ffaker/address_de.rb +0 -2
- data/lib/ffaker/address_fi.rb +0 -2
- data/lib/ffaker/address_fr.rb +0 -2
- data/lib/ffaker/address_gr.rb +0 -2
- data/lib/ffaker/address_id.rb +0 -2
- data/lib/ffaker/address_in.rb +0 -2
- data/lib/ffaker/address_ja.rb +0 -2
- data/lib/ffaker/address_nl.rb +0 -2
- data/lib/ffaker/address_ru.rb +0 -2
- data/lib/ffaker/address_se.rb +0 -2
- data/lib/ffaker/address_sn.rb +0 -2
- data/lib/ffaker/address_ua.rb +0 -2
- data/lib/ffaker/address_uk.rb +0 -2
- data/lib/ffaker/address_us.rb +0 -2
- data/lib/ffaker/animal.rb +1 -1
- data/lib/ffaker/bacon_ipsum.rb +0 -2
- data/lib/ffaker/data/food_pl/diary +14 -0
- data/lib/ffaker/data/food_pl/fermented +13 -0
- data/lib/ffaker/data/food_pl/fruits +34 -0
- data/lib/ffaker/data/food_pl/herbs +20 -0
- data/lib/ffaker/data/food_pl/meats +9 -0
- data/lib/ffaker/data/food_pl/preserves +10 -0
- data/lib/ffaker/data/food_pl/spices +26 -0
- data/lib/ffaker/data/food_pl/vegetables +45 -0
- data/lib/ffaker/data/freedom_ipsum/freedom_words +161 -0
- data/lib/ffaker/data/lorem/words +0 -67
- data/lib/ffaker/data/phone_number_ja/four_disit_area_codes +41 -0
- data/lib/ffaker/data/phone_number_ja/one_disit_area_codes +3 -0
- data/lib/ffaker/data/phone_number_ja/three_disit_area_codes +296 -0
- data/lib/ffaker/data/phone_number_ja/two_disit_area_codes +48 -0
- data/lib/ffaker/dizzle_ipsum.rb +0 -2
- data/lib/ffaker/food_pl.rb +65 -0
- data/lib/ffaker/freedom_ipsum.rb +20 -0
- data/lib/ffaker/healthcare_ipsum.rb +0 -2
- data/lib/ffaker/hipster_ipsum.rb +0 -2
- data/lib/ffaker/identification_es_cl.rb +0 -2
- data/lib/ffaker/identification_es_co.rb +0 -1
- data/lib/ffaker/identification_mx.rb +0 -2
- data/lib/ffaker/image.rb +8 -11
- data/lib/ffaker/internet_se.rb +0 -2
- data/lib/ffaker/lorem_cn.rb +0 -1
- data/lib/ffaker/name_cs.rb +0 -2
- data/lib/ffaker/name_da.rb +0 -2
- data/lib/ffaker/name_de.rb +0 -2
- data/lib/ffaker/name_mx.rb +0 -2
- data/lib/ffaker/name_nb.rb +0 -2
- data/lib/ffaker/name_nl.rb +0 -2
- data/lib/ffaker/name_ph.rb +0 -2
- data/lib/ffaker/name_ru.rb +0 -2
- data/lib/ffaker/name_se.rb +0 -2
- data/lib/ffaker/name_ua.rb +0 -2
- data/lib/ffaker/phone_number_da.rb +0 -1
- data/lib/ffaker/phone_number_ja.rb +88 -0
- data/lib/ffaker/unit_english.rb +0 -2
- data/lib/ffaker/unit_metric.rb +0 -2
- data/lib/version.rb +1 -1
- data/test/helper.rb +3 -3
- data/test/test_bank.rb +2 -3
- data/test/test_food_pl.rb +61 -0
- data/test/test_freedom_ipsum.rb +21 -0
- data/test/test_image.rb +1 -1
- data/test/test_lorem.rb +4 -0
- data/test/test_lorem_fr.rb +9 -7
- data/test/test_phone_number_ja.rb +63 -0
- data/test/test_ssn_se.rb +1 -1
- data/test/test_time.rb +2 -3
- data/test/test_tweet.rb +1 -1
- metadata +177 -155
@@ -0,0 +1,48 @@
|
|
1
|
+
11
|
2
|
+
15
|
3
|
+
17
|
4
|
+
18
|
5
|
+
19
|
6
|
+
22
|
7
|
+
23
|
8
|
+
24
|
9
|
+
25
|
10
|
+
26
|
11
|
+
27
|
12
|
+
28
|
13
|
+
29
|
14
|
+
42
|
15
|
+
43
|
16
|
+
44
|
17
|
+
45
|
18
|
+
46
|
19
|
+
47
|
20
|
+
48
|
21
|
+
49
|
22
|
+
52
|
23
|
+
53
|
24
|
+
54
|
25
|
+
55
|
26
|
+
58
|
27
|
+
59
|
28
|
+
72
|
29
|
+
73
|
30
|
+
75
|
31
|
+
76
|
32
|
+
77
|
33
|
+
78
|
34
|
+
79
|
35
|
+
82
|
36
|
+
83
|
37
|
+
84
|
38
|
+
86
|
39
|
+
87
|
40
|
+
88
|
41
|
+
89
|
42
|
+
92
|
43
|
+
93
|
44
|
+
95
|
45
|
+
96
|
46
|
+
97
|
47
|
+
98
|
48
|
+
99
|
data/lib/ffaker/dizzle_ipsum.rb
CHANGED
@@ -0,0 +1,65 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module FFaker
|
4
|
+
module FoodPL
|
5
|
+
extend ModuleUtils
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def food
|
9
|
+
case rand(0..1)
|
10
|
+
when 0 then processed
|
11
|
+
when 1 then unprocessed
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def processed
|
16
|
+
case rand(0..2)
|
17
|
+
when 0 then fermented
|
18
|
+
when 1 then diary
|
19
|
+
when 2 then preserves
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def unprocessed
|
24
|
+
case rand(0..4)
|
25
|
+
when 0 then vegetable
|
26
|
+
when 1 then fruit
|
27
|
+
when 2 then herb
|
28
|
+
when 3 then spice
|
29
|
+
when 4 then meat
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def vegetable
|
34
|
+
fetch_sample(VEGETABLES)
|
35
|
+
end
|
36
|
+
|
37
|
+
def fruit
|
38
|
+
fetch_sample(FRUITS)
|
39
|
+
end
|
40
|
+
|
41
|
+
def herb
|
42
|
+
fetch_sample(HERBS)
|
43
|
+
end
|
44
|
+
|
45
|
+
def spice
|
46
|
+
fetch_sample(SPICES)
|
47
|
+
end
|
48
|
+
|
49
|
+
def meat
|
50
|
+
fetch_sample(MEATS)
|
51
|
+
end
|
52
|
+
|
53
|
+
def fermented
|
54
|
+
fetch_sample(FERMENTED)
|
55
|
+
end
|
56
|
+
|
57
|
+
def diary
|
58
|
+
fetch_sample(DIARY)
|
59
|
+
end
|
60
|
+
|
61
|
+
def preserves
|
62
|
+
fetch_sample(PRESERVES)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'ffaker/lorem'
|
4
|
+
|
5
|
+
module FFaker
|
6
|
+
module FreedomIpsum
|
7
|
+
include Lorem
|
8
|
+
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
def word
|
13
|
+
fetch_sample(FREEDOM_WORDS)
|
14
|
+
end
|
15
|
+
|
16
|
+
def words(num = 3)
|
17
|
+
fetch_sample(FREEDOM_WORDS, count: num)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/ffaker/hipster_ipsum.rb
CHANGED
data/lib/ffaker/image.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'cgi'
|
3
4
|
require 'tempfile'
|
4
5
|
require 'open-uri'
|
5
6
|
|
@@ -18,11 +19,16 @@ module FFaker
|
|
18
19
|
text_color = FFaker::Color.hex_code if text_color == :random
|
19
20
|
text = CGI.escape(text.to_s)
|
20
21
|
|
21
|
-
"https://
|
22
|
+
"https://dummyimage.com/#{size}/#{bg_color}/#{text_color}.#{format}?text=#{text}"
|
22
23
|
end
|
23
24
|
|
24
25
|
def file(size = '300x300', format = 'png', bg_color = :random, text_color = :random, text = nil)
|
25
|
-
|
26
|
+
uri = URI.parse(url(size, format, bg_color, text_color, text))
|
27
|
+
file = Tempfile.new('ffaker_image')
|
28
|
+
file.binmode
|
29
|
+
file << uri.open.read
|
30
|
+
file.close
|
31
|
+
File.new(file.path)
|
26
32
|
end
|
27
33
|
|
28
34
|
private
|
@@ -38,14 +44,5 @@ module FFaker
|
|
38
44
|
|
39
45
|
raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}"
|
40
46
|
end
|
41
|
-
|
42
|
-
def download_file(url)
|
43
|
-
file = Tempfile.new('ffaker_image')
|
44
|
-
file.binmode
|
45
|
-
file << Kernel.open(url).read
|
46
|
-
file.close
|
47
|
-
|
48
|
-
File.new(file.path)
|
49
|
-
end
|
50
47
|
end
|
51
48
|
end
|
data/lib/ffaker/internet_se.rb
CHANGED
data/lib/ffaker/lorem_cn.rb
CHANGED
data/lib/ffaker/name_cs.rb
CHANGED
data/lib/ffaker/name_da.rb
CHANGED
data/lib/ffaker/name_de.rb
CHANGED
data/lib/ffaker/name_mx.rb
CHANGED
data/lib/ffaker/name_nb.rb
CHANGED
data/lib/ffaker/name_nl.rb
CHANGED
data/lib/ffaker/name_ph.rb
CHANGED
data/lib/ffaker/name_ru.rb
CHANGED
data/lib/ffaker/name_se.rb
CHANGED
data/lib/ffaker/name_ua.rb
CHANGED
@@ -0,0 +1,88 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# sourse: https://www.soumu.go.jp/main_sosiki/joho_tsusin/top/tel_number/number_shitei.html#kotei-denwa
|
4
|
+
|
5
|
+
module FFaker
|
6
|
+
module PhoneNumberJA
|
7
|
+
extend ModuleUtils
|
8
|
+
extend self
|
9
|
+
|
10
|
+
JAPAN_PREFIX = '0'
|
11
|
+
JAPAN_COUNTRY_CODE = '+81'
|
12
|
+
|
13
|
+
ONE_DISIT_FORMAT = '%s #### ####'
|
14
|
+
TWO_DISIT_FORMAT = '%s ### ####'
|
15
|
+
THREE_DISIT_FORMAT = '%s ## ####'
|
16
|
+
FOUR_DISIT_FORMAT = '%s # ####'
|
17
|
+
|
18
|
+
MOBILE_PHONE_PREFIXES = %w[90 80 70].freeze
|
19
|
+
IP_PHONE_PREFIX = '50'
|
20
|
+
MOBILE_NUMBER_FORMAT = '%s #### ####'
|
21
|
+
|
22
|
+
def home_phone_number
|
23
|
+
disit = rand(1..4)
|
24
|
+
FFaker.numerify("#{JAPAN_PREFIX}#{home_phone_number_format(disit)}")
|
25
|
+
end
|
26
|
+
|
27
|
+
def mobile_phone_number
|
28
|
+
FFaker.numerify("#{JAPAN_PREFIX}#{mobile_phone_number_format}")
|
29
|
+
end
|
30
|
+
|
31
|
+
def phone_number
|
32
|
+
case rand(0..1)
|
33
|
+
when 0 then home_phone_number
|
34
|
+
when 1 then mobile_phone_number
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def international_home_phone_number
|
39
|
+
disit = rand(1..4)
|
40
|
+
FFaker.numerify("#{JAPAN_COUNTRY_CODE} #{home_phone_number_format(disit)}")
|
41
|
+
end
|
42
|
+
|
43
|
+
def international_mobile_phone_number
|
44
|
+
FFaker.numerify("#{JAPAN_COUNTRY_CODE} #{mobile_phone_number_format}")
|
45
|
+
end
|
46
|
+
|
47
|
+
def international_phone_number
|
48
|
+
case rand(0..1)
|
49
|
+
when 0 then international_mobile_phone_number
|
50
|
+
when 1 then international_home_phone_number
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
def home_phone_prefix(disit = nil)
|
55
|
+
case disit
|
56
|
+
when 1 then fetch_sample(ONE_DISIT_AREA_CODES)
|
57
|
+
when 2 then fetch_sample(TWO_DISIT_AREA_CODES)
|
58
|
+
when 3 then fetch_sample(THREE_DISIT_AREA_CODES)
|
59
|
+
when 4 then fetch_sample(FOUR_DISIT_AREA_CODES)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def home_phone_number_format(disit)
|
64
|
+
prefix = home_phone_prefix(disit)
|
65
|
+
select_home_phone_format(disit) % prefix
|
66
|
+
end
|
67
|
+
|
68
|
+
def mobile_prefix
|
69
|
+
fetch_sample(MOBILE_PHONE_PREFIXES)
|
70
|
+
end
|
71
|
+
|
72
|
+
def mobile_phone_number_format
|
73
|
+
prefix = mobile_prefix
|
74
|
+
MOBILE_NUMBER_FORMAT % prefix
|
75
|
+
end
|
76
|
+
|
77
|
+
private
|
78
|
+
|
79
|
+
def select_home_phone_format(disit)
|
80
|
+
case disit
|
81
|
+
when 1 then ONE_DISIT_FORMAT
|
82
|
+
when 2 then TWO_DISIT_FORMAT
|
83
|
+
when 3 then THREE_DISIT_FORMAT
|
84
|
+
when 4 then FOUR_DISIT_FORMAT
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|