ffaker 2.0.0 → 2.1.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 +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
+ 巡视员