ffaker 2.0.0 → 2.1.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 +32 -0
  3. data/README.md +7 -6
  4. data/REFERENCE.md +1355 -0
  5. data/Rakefile +6 -6
  6. data/ffaker.gemspec +16 -3
  7. data/lib/ffaker.rb +1 -1
  8. data/lib/ffaker/address_ca.rb +3 -3
  9. data/lib/ffaker/avatar.rb +20 -0
  10. data/lib/ffaker/bacon_ipsum.rb +1 -1
  11. data/lib/ffaker/data/job_cn/job_nouns +300 -0
  12. data/lib/ffaker/data/sport/names +34 -0
  13. data/lib/ffaker/dizzle_ipsum.rb +1 -1
  14. data/lib/ffaker/healthcare_ipsum.rb +1 -1
  15. data/lib/ffaker/hipster_ipsum.rb +1 -1
  16. data/lib/ffaker/html_ipsum.rb +1 -1
  17. data/lib/ffaker/identification_kr.rb +20 -0
  18. data/lib/ffaker/identification_mx.rb +3 -3
  19. data/lib/ffaker/internet.rb +3 -3
  20. data/lib/ffaker/internet_se.rb +1 -1
  21. data/lib/ffaker/job_cn.rb +12 -0
  22. data/lib/ffaker/job_fr.rb +6 -2
  23. data/lib/ffaker/locale.rb +1 -1
  24. data/lib/ffaker/lorem.rb +7 -5
  25. data/lib/ffaker/lorem_ar.rb +1 -1
  26. data/lib/ffaker/lorem_cn.rb +1 -1
  27. data/lib/ffaker/lorem_fr.rb +1 -1
  28. data/lib/ffaker/lorem_kr.rb +1 -1
  29. data/lib/ffaker/movie.rb +6 -0
  30. data/lib/ffaker/phone_number.rb +46 -17
  31. data/lib/ffaker/product.rb +1 -1
  32. data/lib/ffaker/skill.rb +1 -1
  33. data/lib/ffaker/sport.rb +10 -0
  34. data/lib/ffaker/string.rb +22 -11
  35. data/lib/ffaker/utils/array_utils.rb +4 -3
  36. data/lib/ffaker/vehicle.rb +1 -1
  37. data/scripts/reference.rb +89 -0
  38. data/test/test_address_ca.rb +6 -4
  39. data/test/test_array_utils.rb +3 -3
  40. data/test/test_avatar.rb +50 -0
  41. data/test/test_company.rb +8 -6
  42. data/test/test_identification.rb +5 -4
  43. data/test/test_identification_kr.rb +13 -0
  44. data/test/test_internet.rb +4 -0
  45. data/test/test_job.rb +1 -2
  46. data/test/test_job_cn.rb +17 -0
  47. data/test/test_job_fr.rb +4 -7
  48. data/test/test_job_ja.rb +1 -1
  49. data/test/test_job_kr.rb +1 -1
  50. data/test/test_locale.rb +21 -0
  51. data/test/test_lorem_kr.rb +1 -1
  52. data/test/test_movie.rb +8 -0
  53. data/test/test_name.rb +3 -3
  54. data/test/test_name_br.rb +7 -8
  55. data/test/test_name_cs.rb +8 -6
  56. data/test/test_name_de.rb +3 -3
  57. data/test/test_name_fr.rb +15 -17
  58. data/test/test_name_ga.rb +12 -14
  59. data/test/test_name_it.rb +14 -15
  60. data/test/test_name_ja.rb +1 -1
  61. data/test/test_name_mx.rb +82 -80
  62. data/test/test_name_nb.rb +6 -9
  63. data/test/test_name_nl.rb +3 -3
  64. data/test/test_name_ph.rb +12 -2
  65. data/test/test_name_ru.rb +14 -10
  66. data/test/test_name_se.rb +6 -9
  67. data/test/test_name_sn.rb +39 -52
  68. data/test/test_name_th.rb +7 -9
  69. data/test/test_phone_number.rb +9 -0
  70. data/test/test_sports.rb +13 -0
  71. data/test/test_string.rb +26 -16
  72. data/test/test_units.rb +8 -10
  73. data/test/test_units_english.rb +15 -22
  74. data/test/test_units_metric.rb +15 -21
  75. metadata +22 -4
data/Rakefile CHANGED
@@ -72,11 +72,6 @@ end
72
72
 
73
73
  task :default => :test
74
74
 
75
- desc "Open an irb session preloaded with this library"
76
- task :console do
77
- sh "irb -I ./lib/ -rubygems -r ./lib/#{name}.rb"
78
- end
79
-
80
75
  #############################################################################
81
76
  #
82
77
  # Custom tasks (add your own tasks here)
@@ -110,7 +105,7 @@ task :release => :build do
110
105
  sh "gem push pkg/#{name}-#{version}.gem"
111
106
  end
112
107
 
113
- task :build => :gemspec do
108
+ task :build => [:gemspec, :reference] do
114
109
  sh "mkdir -p pkg"
115
110
  sh "gem build #{gemspec_file}"
116
111
  sh "mv #{gem_file} pkg"
@@ -155,3 +150,8 @@ task :validate do
155
150
  exit!
156
151
  end
157
152
  end
153
+
154
+ desc "Creates REFERENCE.md"
155
+ task :reference do
156
+ system "ruby ./scripts/reference.rb > REFERENCE.md"
157
+ end
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
4
4
  s.rubygems_version = '1.3.5'
5
5
 
6
6
  s.name = 'ffaker'
7
- s.version = '2.0.0'
8
- s.date = '2015-03-16'
7
+ s.version = '2.1.0'
8
+ s.date = '2015-07-07'
9
9
  s.rubyforge_project = 'ffaker'
10
10
  s.required_ruby_version = '>= 1.9'
11
11
 
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
 
17
17
  s.authors = ["Emmanuel Oga"]
18
18
  s.email = 'EmmanuelOga@gmail.com'
19
- s.homepage = 'http://github.com/emmanueloga/ffaker'
19
+ s.homepage = 'http://github.com/ffaker/ffaker'
20
20
 
21
21
  s.require_paths = %w[lib]
22
22
 
@@ -29,6 +29,7 @@ Gem::Specification.new do |s|
29
29
  Gemfile
30
30
  LICENSE
31
31
  README.md
32
+ REFERENCE.md
32
33
  Rakefile
33
34
  ffaker.gemspec
34
35
  lib/ffaker.rb
@@ -46,6 +47,7 @@ Gem::Specification.new do |s|
46
47
  lib/ffaker/address_sn.rb
47
48
  lib/ffaker/address_uk.rb
48
49
  lib/ffaker/address_us.rb
50
+ lib/ffaker/avatar.rb
49
51
  lib/ffaker/bacon_ipsum.rb
50
52
  lib/ffaker/boolean.rb
51
53
  lib/ffaker/color.rb
@@ -113,6 +115,7 @@ Gem::Specification.new do |s|
113
115
  lib/ffaker/data/job/job_adj
114
116
  lib/ffaker/data/job/job_noun
115
117
  lib/ffaker/data/job/job_prefix
118
+ lib/ffaker/data/job_cn/job_nouns
116
119
  lib/ffaker/data/job_fr/job_nouns
117
120
  lib/ffaker/data/job_fr/job_prefixes
118
121
  lib/ffaker/data/job_ja/job_nouns
@@ -184,6 +187,7 @@ Gem::Specification.new do |s|
184
187
  lib/ffaker/data/skill/specialty_end
185
188
  lib/ffaker/data/skill/specialty_start
186
189
  lib/ffaker/data/skill/tech_skills
190
+ lib/ffaker/data/sport/names
187
191
  lib/ffaker/data/vehicle/makes_list
188
192
  lib/ffaker/data/vehicle/models_list
189
193
  lib/ffaker/data/vehicle/trims_list
@@ -203,10 +207,12 @@ Gem::Specification.new do |s|
203
207
  lib/ffaker/identification_es.rb
204
208
  lib/ffaker/identification_es_cl.rb
205
209
  lib/ffaker/identification_es_co.rb
210
+ lib/ffaker/identification_kr.rb
206
211
  lib/ffaker/identification_mx.rb
207
212
  lib/ffaker/internet.rb
208
213
  lib/ffaker/internet_se.rb
209
214
  lib/ffaker/job.rb
215
+ lib/ffaker/job_cn.rb
210
216
  lib/ffaker/job_fr.rb
211
217
  lib/ffaker/job_ja.rb
212
218
  lib/ffaker/job_kr.rb
@@ -253,6 +259,7 @@ Gem::Specification.new do |s|
253
259
  lib/ffaker/phone_number_sn.rb
254
260
  lib/ffaker/product.rb
255
261
  lib/ffaker/skill.rb
262
+ lib/ffaker/sport.rb
256
263
  lib/ffaker/ssn.rb
257
264
  lib/ffaker/ssn_mx.rb
258
265
  lib/ffaker/ssn_se.rb
@@ -268,6 +275,7 @@ Gem::Specification.new do |s|
268
275
  scripts/benchmark.rb
269
276
  scripts/profile.sh
270
277
  scripts/profiling.rb
278
+ scripts/reference.rb
271
279
  test/helper.rb
272
280
  test/test_address.rb
273
281
  test/test_address_au.rb
@@ -283,6 +291,7 @@ Gem::Specification.new do |s|
283
291
  test/test_address_uk.rb
284
292
  test/test_address_us.rb
285
293
  test/test_array_utils.rb
294
+ test/test_avatar.rb
286
295
  test/test_bacon_ipsum.rb
287
296
  test/test_boolean.rb
288
297
  test/test_color.rb
@@ -309,12 +318,15 @@ Gem::Specification.new do |s|
309
318
  test/test_identification_es.rb
310
319
  test/test_identification_es_cl.rb
311
320
  test/test_identification_es_mx.rb
321
+ test/test_identification_kr.rb
312
322
  test/test_internet.rb
313
323
  test/test_internet_se.rb
314
324
  test/test_job.rb
325
+ test/test_job_cn.rb
315
326
  test/test_job_fr.rb
316
327
  test/test_job_ja.rb
317
328
  test/test_job_kr.rb
329
+ test/test_locale.rb
318
330
  test/test_lorem.rb
319
331
  test/test_lorem_ar.rb
320
332
  test/test_lorem_cn.rb
@@ -352,6 +364,7 @@ Gem::Specification.new do |s|
352
364
  test/test_phone_number_sg.rb
353
365
  test/test_phone_number_sn.rb
354
366
  test/test_skill.rb
367
+ test/test_sports.rb
355
368
  test/test_ssn.rb
356
369
  test/test_ssn_mx.rb
357
370
  test/test_ssn_se.rb
@@ -1,5 +1,5 @@
1
1
  module FFaker
2
- VERSION = '2.0.0'
2
+ VERSION = '2.1.0'
3
3
 
4
4
  require 'ffaker/utils/array_utils'
5
5
  require 'ffaker/utils/module_utils'
@@ -9,11 +9,12 @@ module FFaker
9
9
  extend ModuleUtils
10
10
  extend self
11
11
 
12
- POSTAL_CODE_FORMATS = ['?#? #?#']
12
+ POSTAL_CODE_FORMAT = '?#? #?#'
13
+ POSTAL_CODE_CHARS = %w(A B C E G H J K L M N P R S T V X Y)
13
14
  PROVINCE_ABBRS = %w(NL NS PE NB QC ON MB SK AB BC YT NT NU)
14
15
 
15
16
  def postal_code
16
- FFaker.bothify(POSTAL_CODE_FORMATS.sample).upcase
17
+ FFaker.numerify(POSTAL_CODE_FORMAT.gsub("?") { POSTAL_CODE_CHARS.sample })
17
18
  end
18
19
 
19
20
  def province
@@ -27,6 +28,5 @@ module FFaker
27
28
  def province_abbr
28
29
  PROVINCE_ABBRS.sample
29
30
  end
30
-
31
31
  end
32
32
  end
@@ -0,0 +1,20 @@
1
+ # encoding: utf-8
2
+
3
+ module FFaker
4
+ module Avatar
5
+
6
+ extend ModuleUtils
7
+ extend self
8
+
9
+ SUPPORTED_FORMATS = %w(png jpg bmp)
10
+
11
+ def image(slug = nil, size = '300x300', format = 'png', bgset = nil)
12
+ raise ArgumentError, "Size should be specified in format 300x300" unless size.match(/^[0-9]+x[0-9]+$/)
13
+ raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}" unless SUPPORTED_FORMATS.include?(format)
14
+ raise ArgumentError, "Not a supported background number. Choose eather 1 or 2" unless (bgset.nil? or (1..2).include?(bgset.to_i))
15
+ slug ||= FFaker::Lorem.words.join
16
+ "http://robohash.org/#{slug}.#{format}?size=#{size}#{'&bgset=bg' + bgset.to_s unless bgset.nil?}"
17
+ end
18
+
19
+ end
20
+ end
@@ -15,7 +15,7 @@ module FFaker
15
15
  end
16
16
 
17
17
  def words(num = 3)
18
- BACON_WORDS.random_pick(num)
18
+ BACON_WORDS.sample(num)
19
19
  end
20
20
  end
21
21
  end
@@ -0,0 +1,300 @@
1
+ 会计师
2
+ 会计助理
3
+ 记帐员
4
+ 会计部经理
5
+ 会计部职员
6
+ 会计主管
7
+ 演员
8
+ 广告文撰写人
9
+ 行政助理
10
+ 行政经理
11
+ 行政人员
12
+ 行政主管
13
+ 局域网管理员
14
+ 广告助理
15
+ 广告协调员
16
+ 地勤人员
17
+ 航空公司定座员
18
+ 航空公司职员
19
+ 新闻主播
20
+ 广播员
21
+ 应用软件程序员
22
+ 学徒工
23
+ 考古学家
24
+ 建筑师
25
+ 工匠
26
+ 艺术家
27
+ 客户管理助理
28
+ 人事助理
29
+ 副厂长
30
+ 商店经理助理
31
+ 人力资源副总裁助理
32
+ 副总裁助理
33
+ 副教授
34
+ 宇航员
35
+ 运动员
36
+ 服务员
37
+ 律师
38
+ 审计师
39
+ 汽车技工
40
+ 保姆
41
+ 烘培师
42
+ 理发师
43
+ 棒球选手
44
+ 门童
45
+ 旅馆行李员
46
+ 员工福利协调员
47
+ 清洁工
48
+ 生物学家
49
+ 铁匠
50
+ 证券分析员
51
+ 证券交易员
52
+ 植物学家
53
+ 拳击手
54
+ 部门经理
55
+ 经纪人
56
+ 预算师
57
+ 公车司机
58
+ 业务主任
59
+ 业务经理
60
+ 屠夫
61
+ 采购员
62
+ 木匠
63
+ 漫画家
64
+ 出纳员
65
+ 厨师
66
+ 化学工程师
67
+ 总工程师
68
+ 首席执行官
69
+ 首席运营官
70
+ 土木工程师
71
+ 公务员
72
+ 文员
73
+ 打字员
74
+ 接待员
75
+ 小丑
76
+ 鞋匠
77
+ 薪酬经理
78
+ 作曲家
79
+ 计算机工程师
80
+ 程序员
81
+ 乘务员
82
+ 建筑工人
83
+ 厨师
84
+ 牛仔
85
+ 工匠
86
+ 客户经理
87
+ 客户代表
88
+ 海关官员
89
+ 舞蹈家
90
+ 牙科医生
91
+ 副总经理
92
+ 设计师
93
+ 侦探
94
+ 人力资源总监
95
+ 信息服务主管
96
+ 运营总监
97
+ 分公司权利总监
98
+ 董事
99
+ 主管
100
+ 医生
101
+ 推销员
102
+ 司机
103
+ 药剂师
104
+ 经济研究助理
105
+ 经济学家
106
+ 编辑
107
+ 电气工程师
108
+ 电工
109
+ 员工关系代表
110
+ 招募顾问
111
+ 英语教师
112
+ 行政董事
113
+ 市场执行总监
114
+ 探险家
115
+ 外销部经理
116
+ 外汇部职员
117
+ 外汇部核算员
118
+ 后勤经理
119
+ 农夫
120
+ 时装设计师
121
+ 土地担保协调员
122
+ 财务主任
123
+ 财务总监
124
+ 财务报告人
125
+ 消防人员
126
+ 消防员
127
+ 渔夫
128
+ 花商
129
+ 飞行员
130
+ 食品服务经理
131
+ 外交部长
132
+ 领班
133
+ 财务经理
134
+ 园丁
135
+ 审计长
136
+ 总经理助理
137
+ 总经理秘书
138
+ 地质学家
139
+ 警卫
140
+ 导游
141
+ 理发师
142
+ 硬件工程师
143
+ 校长
144
+ 中学校长
145
+ 小学校长
146
+ 产品经理
147
+ 管家
148
+ 进口联络员
149
+ 信息分析师
150
+ 保险公司理赔员
151
+ 保险代理人
152
+ 保险认领管理员
153
+ 保险协调员
154
+ 口语翻译
155
+ 人员配置专员
156
+ 记者
157
+ 法官
158
+ 劳动关系专员
159
+ 系统分析师
160
+ 法律顾问
161
+ 图书管理员
162
+ 救生员
163
+ 语言学家
164
+ 魔术师
165
+ 邮差
166
+ 维修工程师
167
+ 管理顾问
168
+ 公关部经理
169
+ 网络管理经理
170
+ 厂家代表
171
+ 市场分析师
172
+ 市场开发部经理
173
+ 市场调查分析员
174
+ 市场顾问
175
+ 销售主管
176
+ 市场实习生
177
+ 市场部经理
178
+ 销售代表
179
+ 市场销售员
180
+ 按摩师
181
+ 数学家
182
+ 机械师
183
+ 采购经理
184
+ 矿工
185
+ 模特
186
+ 导演
187
+ 音乐教师
188
+ 音乐家
189
+ 造船工程师
190
+ 尼姑
191
+ 护士
192
+ 职员
193
+ 业务经理
194
+ 接线员
195
+ 包装设计师
196
+ 画家
197
+ 人事部职员
198
+ 药剂师
199
+ 哲学家
200
+ 摄影师
201
+ 物理学家
202
+ 生理学家
203
+ 钢琴家
204
+ 飞行员
205
+ 厂长
206
+ 剧作家
207
+ 诗人
208
+ 警察
209
+ 邮政人员
210
+ 私人秘书
211
+ 产品经理
212
+ 校对员
213
+ 房地产经理
214
+ 质量管理工程师
215
+ 房地产经纪人
216
+ 房地产评估师
217
+ 房地产经理
218
+ 前台
219
+ 招聘专员
220
+ 饭店经理
221
+ 零售采购员
222
+ 雕刻家
223
+ 船员
224
+ 安全员
225
+ 高级会计
226
+ 高级客户经理
227
+ 服务部经理
228
+ 店主
229
+ 软件工程师
230
+ 统计员
231
+ 监管员
232
+ 辅导员
233
+ 外科医生
234
+ 测量员
235
+ 系统工程师
236
+ 计程车司机
237
+ 技术编辑
238
+ 电话调查员
239
+ 导游
240
+ 贸易财务主管
241
+ 交通协管员
242
+ 培训部经理
243
+ 培训专员
244
+ 翻译核对员
245
+ 翻译员
246
+ 运输经理
247
+ 银行高级职员
248
+ 五毛
249
+ 兽医
250
+ 人力资源副总裁
251
+ 焊接工
252
+ 批发采购员
253
+ 动物学家
254
+ 编辑
255
+ 部长助理
256
+ 播音指导
257
+ 参事
258
+ 仓库管理员
259
+ 常务副省长
260
+ 车间主任
261
+ 大学校长
262
+ 党组书记
263
+ 电视主持人
264
+ 儿科主任医师
265
+ 发言人
266
+ 法警
267
+ 法医
268
+ 妇科主治医师
269
+ 副教授
270
+ 高级工程师
271
+ 高级编辑
272
+ 高级讲师
273
+ 公证员
274
+ 顾问
275
+ 护师
276
+ 讲师
277
+ 警督
278
+ 警监
279
+ 警员
280
+ 局长
281
+ 录音师
282
+ 名誉董事长
283
+ 名誉教授
284
+ 名誉顾问
285
+ 人大代表
286
+ 人民法院院长
287
+ 人民检察院检察长
288
+ 省长
289
+ 书记
290
+ 特级教师
291
+ 司长
292
+ 武官
293
+ 文化专员
294
+ 舞蹈编剧
295
+ 舞台监督
296
+ 县长
297
+ 乡镇长
298
+ 新闻文化参赞
299
+ 学院院长
300
+ 巡视员