ffaker 1.8.1 → 1.9.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +7 -0
- data/ffaker.gemspec +10 -2
- data/lib/ffaker/address_de.rb +245 -186
- data/lib/ffaker/hipster_ipsum.rb +37 -0
- data/lib/ffaker/html_ipsum.rb +37 -39
- data/lib/ffaker/internet.rb +1 -1
- data/lib/ffaker/lorem_cn.rb +52 -49
- data/lib/ffaker/name_cn.rb +1 -1
- data/lib/ffaker/name_de.rb +82 -82
- data/lib/ffaker/name_ja.rb +124 -0
- data/lib/ffaker/name_sn.rb +91 -0
- data/lib/ffaker/phone_number_sn.rb +80 -0
- data/lib/ffaker.rb +22 -18
- data/test/test_faker_internet.rb +2 -1
- data/test/test_faker_name_ja.rb +12 -0
- data/test/test_faker_name_sn.rb +112 -0
- data/test/test_hipster_ipsum.rb +29 -0
- data/test/test_lorem_cn.rb +17 -3
- data/test/test_phone_number_sn.rb +41 -0
- metadata +15 -3
@@ -0,0 +1,124 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Faker
|
3
|
+
module NameJA
|
4
|
+
extend ModuleUtils
|
5
|
+
extend self
|
6
|
+
|
7
|
+
def name
|
8
|
+
"#{first_name}#{last_name}"
|
9
|
+
end
|
10
|
+
|
11
|
+
def first_name
|
12
|
+
FIRST_NAMES.rand
|
13
|
+
end
|
14
|
+
|
15
|
+
def last_name
|
16
|
+
LAST_NAMES.rand
|
17
|
+
end
|
18
|
+
|
19
|
+
def last_first
|
20
|
+
"#{last_name}#{first_name}"
|
21
|
+
end
|
22
|
+
|
23
|
+
LAST_NAMES = k %w(佐藤 高橋 佐々木 鈴木 伊藤 田中 吉田 渡辺 小林 中村 加藤 山本 斎藤 山田 阿部
|
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
|
+
FIRST_NAMES = k %w(あきら アキラ 晃 輝 飛鳥 梓 東 あまね 周 歩 新 伊織 出 おさむ 修
|
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
|
+
end
|
124
|
+
end
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# => author: xarala
|
4
|
+
# => email: pathe.sene@xarala.sn
|
5
|
+
# => website: http://www.xarala.sn
|
6
|
+
# => the names & first names in this module were found at this url : http://www.senegalaisement.com/senegal/noms_et_prenoms.html
|
7
|
+
module Faker
|
8
|
+
module NameSN
|
9
|
+
extend ModuleUtils
|
10
|
+
extend self
|
11
|
+
|
12
|
+
# Females
|
13
|
+
#
|
14
|
+
PREFIX_FEMALE = k %w(adja adjaratou mame ndeye)
|
15
|
+
FIRST_NAMES_FEMALE = k %w( Abibatou Aby Absa Adama Adiouma Adji Adja Aïcha Aïda Aïssatou Akinumelob Alima Alimatou Alinesiitowe Aloendisso Altine Ama Aminata Aminta Amy Amina Anta Arame Assa Assietou Astou Ata Atia Awa Awentorébé Ayimpen Banel Batouly Bigué Billé Binta Bineta Binette Binta Bintou Borika Bougouma Boury Bousso Ciramadi Codou Combé Coudouution Coumba Coumboye Coura Daba Dado Daka Debbo Défa Dewel Dewene Diakher Diakhou Dialikatou Dianké Diariatou Diarra Diary Dibor Dieourou Dior Diouma Djaly Djébou Djeynaba Dkikel Djilane Enfadima Fabala Fabinta Fadima Fakane Fama Fanta Farmata Fatima Fatou Fatoumatou Fily Garmi Gnagna Gnilane Gnima Gouya Guignane Guissaly Haby Hawa Heinda Holèl Issate Kankou Karimatou Kenbougoul Kéwé Kadiali Khadija Khadijatou Khady Khar Khary Khayfatte Khoudia Khoudjedji Khoumbaré Kiné Korka Laf Lama Léna Lika Lissah Liwane Mada Madior Madjiguène Maguette Mahawa Mame Mamina Manthita Marème Mariama Mamassa Mane Maty Mayatta Maymouna Mbarou Mbayeng Mbissine Mbossé Mingue Mintou Mouskéba Nafi Nbieumbet Ndella Ndeye Ndiarenioul Ndiasse Ndiaty Ndiémé Ndioba Ndiolé Ndioro Ndombo Néné Neyba Ngoné Ngosse Nguenar Nguissaly Niakuhufosso Niali Nialine Ningou Nini Niouma Oulèye Ouly Oulimata Oumou Oumy Oureye Penda Raby Raki Rama Ramatoulaye Ramata Rokhaya Roubba Roughy Sadio Safiétou Safi Sagar Sahaba Salimata Salamata Sanakha Sarratou Saoudatou Sawdiatou Selbé Sell Seynabou Seyni Sibett Siga Sira Sirabiry Soda Sofiatou Sofietou Sokhna Souadou Soukeye Soukeyna Tabara Tacko Taki Tening Téwa Tiné Thiomba Thiony Thioro Thioumbane Tocka Tokoselle Toly Walty Yadicone Yacine Yandé Yaye )
|
16
|
+
|
17
|
+
# Males
|
18
|
+
#
|
19
|
+
PREFIX_MALE = k %w(pape eladji mame serigne)
|
20
|
+
FIRST_NAMES_MALE = k %w( Abba Abdallah Abdou Abdoulatif Abdoulaye Abdourahmane Ablaye Abou Adama Agouloubene Aïnina Aladji Alassane Albouri Alfa Alfousseyni Aliou Alioune Allé Almamy Amadou Amara Amath Amidou Ansoumane Anta Arfang Arona Assane Ass Aziz Baaba Babacar Babou Badara Badou Bacar Baïdi Baila Bakari Ballago Balla Bamba Banta Bara Bassirou Bathie Bayo Becaye Bilal Biram Birane Birima Biry Bocar Bodiel Bolikoro Boubacar Boubou Bougouma Bouly Bouna Bourkhane Bransan Cheikh Chérif Ciré Daly Dame Daouda Daour Demba Dényanké Diakhou Dial Dialamba Dialegueye Dianco Dicory Diégane Diène Dierry Diokel Diokine Diomaye Djibo Djibril Djiby Doudou Dramane ElHadj Elimane Facourou Fadel Falilou Fallou Famara Farba Fatel Fodé Fodey Fodié Foulah Galaye Gaoussou Gora Gorgui Goumbo Goundo Guidado Habib Hadiya Hady Hamidou Hammel Hatab Iba Ibrahima Ibou Idrissa Insa Ismaïl Ismaïla Issa Isshaga Jankebay Jamuyon Kader Kainack Kalidou Kalilou Kambia Kao Kaourou Karamo Kéba Khadim Khadir Khalifa Khamby Khary Khoudia Khoule Kor Koutoubo Lamine Lamp Landing Lat Latif Latsouck Latyr Lémou Léou Leyti Libasse Limane Loumboul Maba Macky Macodou Madia Madické Mady Mactar Maffal Maguette Mahécor Makan Malal Malamine Malang Malaw Malick Mallé Mamadou Mamour Mansour Maodo Mapaté Mar Massamba Massar Masseck Mbagnick Mbakhane Mbamoussa Mbar Mbaye Mébok Médoune Meïssa Modou Moktar Momar Mor Mountaga Moussa Moustapha Namori Ndane Ndiack Ndiaga Ndiankou Ndiaw Ndiawar Ndiaya Ndiogou Ndiouga Ndongo Ngagne Ngor Nguénar Niakar Niankou Niokhor Nouh Nouha Npaly Ogo Omar Opa Oumar Oury Ousmane Ousseynou Papa Pape Papis Pathé Racine Sadibou Sacoura Saër Sahaba Saïdou Sakhir Salam Salif Saliou Saloum Samba Samori Samsidine Sandigui Sankoun Sanokho Sécouba Sédar Sékou Semou Senghane Serigne Seyba Seydina Seydou Sibiloumbaye Sidate Sidy Siéka Sihalébé Sihounke Silly Socé Sogui Soireba Solal Sonar Souleymane Soundjata Sounkarou Souty Tafsir Talla Tamsir Tanor Tayfor Tekheye Tété Thiawlo Thierno Thione Tijane Tidjane Toumani Vieux Wagane Waly Wandifing Wasis Woula Woury Yacouba Yafaye Yakou Yankhoba Yerim Yero Yoro Yougo Younouss Youssou Yussu Youssoufa )
|
21
|
+
|
22
|
+
# Last Names
|
23
|
+
#
|
24
|
+
LAST_NAMES = k %w( Badji Badiatte Badji Biagui Bassène Bodian Coly Diamacoune Diatta Diadhiou Diédhiou Deme Diémé Djiba Ehemba Goudiaby Himbane Mané Manga Sagna Sambou Sané Sonko Tamba Tendeng Badji Gomis Mané Vieira Carvalho Mendy Mané Preira Correia Basse Sylva Da_Sylva Fernandez Da_Costa Bakhoum Diop Diagne Gaye Gueye Ndoye Ndiour Samb Baloucoune Bandiacky Boissy Diompy Dupa Kabely Kaly Kantoussan Kassoka Kayounga Keny Malack Malèle Malomar Malou Mandika Mandiouban Mancabou Mantanne Mbampassy Médou Minkette Nabaline Nadiack Napel Ndecky Ndeye Niouky Ntab Nzale Panduppy Samy Boubane Bonang Bianquinch Bindian Bendian Bangonine Bapinye Bidiar Bangar Sadio Vieira Lopez Marques Preira Ndiaye Diouf Ndong Dioh Senghor Faye Dior Dione Seye Diongue Sene Dieye Sarr Seck Diaher Bop Kitane Kital Acc Aïdara Athie Aw Ba Baby Baldé Barro Barry Bathily Bousso Camara Cissé Dia Diamanka Diallo Diao Diaw Fassa Fofana Gadio Galadio Kâ Kane Maal Mbow Lo Ly Sall Seydi Sow Sy Sylla Tall Thiam Wane Wone Yock Amar Babou Diagne Diakhoumpa Goumbala Saady Sabara Sougou Sougoufara Tandiné Tandini Touré Diandy Aïdara Bathily Camara Cissé Cissoko Coulibaly Dabo Doumbia Doumbouya Diabang Diakhaté Diabira Diakité Dansokho Diakho Diarra Diawara Djimera Dramé Doucouré Fadiga Fofana Gakou Gandega Kanté Kanouté Keïta Koïta Konaté Niangane Sadio Sakho Samassa Sawane Sidibé Sissoko Soumaré Tandjigora Timera Traoré Touré Wagué Yatéra Boye Demba Dembelé Diack Diarra Dieng Diop Fall Gningue Hanne Kane Kassé Lèye Loum Marone Mbacké Mbathié Mbaye Mbengue Mbodj Mbodji Mboup Mbow Ndao Ndaw Nder Ndiaye Ndour Niane Niang Niass Niasse Pouye Seck Sock Taye Thiam Thiongane Wade )
|
25
|
+
|
26
|
+
# randomized? (senegalese) last_name!
|
27
|
+
#
|
28
|
+
def last_name
|
29
|
+
LAST_NAMES.rand
|
30
|
+
end
|
31
|
+
|
32
|
+
# randomized? (senegalese) male first_name!
|
33
|
+
#
|
34
|
+
def first_name_male
|
35
|
+
FIRST_NAMES_MALE.rand
|
36
|
+
end
|
37
|
+
|
38
|
+
# randomized? (senegalese) female first_name!
|
39
|
+
#
|
40
|
+
def first_name_female
|
41
|
+
FIRST_NAMES_FEMALE.rand
|
42
|
+
end
|
43
|
+
|
44
|
+
# randomized? (senegalese) male prefix!
|
45
|
+
#
|
46
|
+
def prefix_male
|
47
|
+
PREFIX_MALE.rand
|
48
|
+
end
|
49
|
+
|
50
|
+
# randomized? (senegalese) female prefix!
|
51
|
+
#
|
52
|
+
def prefix_female
|
53
|
+
PREFIX_FEMALE.rand
|
54
|
+
end
|
55
|
+
|
56
|
+
# => randomized. (senegalese) male name
|
57
|
+
#
|
58
|
+
def name_male
|
59
|
+
case rand(10)
|
60
|
+
when 7 then "#{prefix_male} #{first_name_male} #{last_name}"
|
61
|
+
when 5 then "#{prefix_male} #{first_name_male} #{last_name}"
|
62
|
+
when 3 then "#{first_name_male} #{last_name}"
|
63
|
+
when 0 then "#{first_name_male} #{last_name}"
|
64
|
+
else "#{first_name_male} #{last_name}"
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
# => randomized. (senegalese) female name
|
69
|
+
#
|
70
|
+
def name_female
|
71
|
+
case rand(10)
|
72
|
+
when 7 then "#{prefix_female} #{first_name_female} #{last_name}"
|
73
|
+
when 5 then "#{prefix_female} #{first_name_female} #{last_name}"
|
74
|
+
when 3 then "#{first_name_female} #{last_name}"
|
75
|
+
when 0 then "#{first_name_female} #{last_name}"
|
76
|
+
else "#{first_name_female} #{last_name}"
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
def name_sn
|
81
|
+
case rand(10)
|
82
|
+
when 7 then "#{prefix_female} #{first_name_female} #{last_name}"
|
83
|
+
when 5 then "#{prefix_male} #{first_name_male} #{last_name}"
|
84
|
+
when 3 then "#{first_name_male} #{last_name}"
|
85
|
+
when 3 then "#{first_name_female} #{last_name}"
|
86
|
+
when 0 then "#{first_name_male} #{last_name}"
|
87
|
+
else "#{first_name_female} #{last_name}"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# => author: xarala
|
4
|
+
# => email: pathe.sene@xarala.sn
|
5
|
+
# => website: http://www.xarala.sn
|
6
|
+
module Faker
|
7
|
+
module PhoneNumberSN
|
8
|
+
extend ModuleUtils
|
9
|
+
extend self
|
10
|
+
|
11
|
+
# Mobile Operator prefixes
|
12
|
+
#
|
13
|
+
# 77 => Orange
|
14
|
+
# 76 => Tigo
|
15
|
+
# 70 => Expresso
|
16
|
+
#
|
17
|
+
MobileOperatorsPrefix = %w(70 76 77)
|
18
|
+
|
19
|
+
# Home or Work Operator prefixes
|
20
|
+
#
|
21
|
+
# 33 => Orange
|
22
|
+
#
|
23
|
+
HomeWorkOperatorsPrefix = %w(33)
|
24
|
+
|
25
|
+
# Return a prefix in MobileOperatorsPrefix
|
26
|
+
# @see Faker::PhoneNumberSN::MobileOperatorsPrefix
|
27
|
+
#
|
28
|
+
def mobile_phone_prefix
|
29
|
+
MobileOperatorsPrefix[rand(3)]
|
30
|
+
end
|
31
|
+
|
32
|
+
# Return a prefix in HomeWorkOperatorsPrefix
|
33
|
+
# @see Faker::PhoneNumberSN::HomeWorkOperatorsPrefix
|
34
|
+
#
|
35
|
+
def homework_phone_prefix
|
36
|
+
HomeWorkOperatorsPrefix[0]
|
37
|
+
end
|
38
|
+
|
39
|
+
# Pattern that can be combined with a prefix to generate mobile, office phone_numbers
|
40
|
+
# Example 745 77 99
|
41
|
+
# Example 245 07 00
|
42
|
+
# Example 726 29 05
|
43
|
+
#
|
44
|
+
def short_phone_number
|
45
|
+
Faker.numerify('###-##-##')
|
46
|
+
end
|
47
|
+
|
48
|
+
# Generates a mobile phone number
|
49
|
+
# Example 70 745 77 99
|
50
|
+
# Example 76 245 07 00
|
51
|
+
# Example 77 726 29 05
|
52
|
+
#
|
53
|
+
def mobile_number
|
54
|
+
"#{mobile_phone_prefix}-#{short_phone_number}"
|
55
|
+
end
|
56
|
+
|
57
|
+
# Generates a home or work phone number
|
58
|
+
# Example 33 845 77 99
|
59
|
+
# Example 33 945 07 00
|
60
|
+
# Example 33 906 29 05
|
61
|
+
#
|
62
|
+
def homework_number
|
63
|
+
"#{homework_phone_prefix}-#{[8, 9][rand(1)]}#{Faker.numerify('##-##-##')}"
|
64
|
+
end
|
65
|
+
|
66
|
+
# Generates a random phone number mobile or home or work
|
67
|
+
#
|
68
|
+
def phone_number
|
69
|
+
case rand(10)
|
70
|
+
when 0 then homework_number
|
71
|
+
when 9 then homework_number
|
72
|
+
when 3 then mobile_number
|
73
|
+
when 5 then mobile_number
|
74
|
+
when 6 then mobile_number
|
75
|
+
when 8 then mobile_number
|
76
|
+
else homework_number
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
data/lib/ffaker.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
module Faker
|
2
|
-
VERSION = "1.
|
2
|
+
VERSION = "1.9.1"
|
3
3
|
|
4
4
|
require 'ffaker/utils/module_utils'
|
5
5
|
|
6
6
|
extend ModuleUtils
|
7
7
|
|
8
|
-
|
8
|
+
LETTERS = k('a'..'z')
|
9
9
|
|
10
10
|
def self.numerify(number_string)
|
11
11
|
number_string.gsub!(/#/) { rand(10).to_s }
|
@@ -21,20 +21,24 @@ module Faker
|
|
21
21
|
letterify(numerify(string))
|
22
22
|
end
|
23
23
|
|
24
|
-
autoload :Address,
|
25
|
-
autoload :AddressDE,
|
26
|
-
autoload :Company,
|
27
|
-
autoload :Education,
|
28
|
-
autoload :
|
29
|
-
autoload :
|
30
|
-
autoload :
|
31
|
-
autoload :
|
32
|
-
autoload :
|
33
|
-
autoload :
|
34
|
-
autoload :
|
35
|
-
autoload :
|
36
|
-
autoload :
|
37
|
-
autoload :
|
38
|
-
autoload :
|
39
|
-
autoload :
|
24
|
+
autoload :Address, 'ffaker/address'
|
25
|
+
autoload :AddressDE, 'ffaker/address_de'
|
26
|
+
autoload :Company, 'ffaker/company'
|
27
|
+
autoload :Education, 'ffaker/education'
|
28
|
+
autoload :Geolocation, 'ffaker/geolocation'
|
29
|
+
autoload :HTMLIpsum, 'ffaker/html_ipsum'
|
30
|
+
autoload :HipsterIpsum, 'ffaker/hipster_ipsum'
|
31
|
+
autoload :Internet, 'ffaker/internet'
|
32
|
+
autoload :Lorem, 'ffaker/lorem'
|
33
|
+
autoload :LoremCN, 'ffaker/lorem_cn'
|
34
|
+
autoload :Name, 'ffaker/name'
|
35
|
+
autoload :NameCN, 'ffaker/name_cn'
|
36
|
+
autoload :NameDE, 'ffaker/name_de'
|
37
|
+
autoload :NameJA, 'ffaker/name_ja'
|
38
|
+
autoload :NameRU, 'ffaker/name_ru'
|
39
|
+
autoload :NameSN, 'ffaker/name_sn'
|
40
|
+
autoload :PhoneNumber, 'ffaker/phone_number'
|
41
|
+
autoload :PhoneNumberSN, 'ffaker/phone_number_sn'
|
42
|
+
autoload :Product, 'ffaker/product'
|
43
|
+
autoload :VERSION, 'ffaker/version'
|
40
44
|
end
|
data/test/test_faker_internet.rb
CHANGED
@@ -18,7 +18,8 @@ class TestFakerInternet < Test::Unit::TestCase
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def test_disposable_email
|
21
|
-
assert @tester.disposable_email.match(
|
21
|
+
assert @tester.disposable_email.match(
|
22
|
+
/.+@(mailinator\.com|suremail\.info|spamherelots\.com|binkmail\.com|safetymail\.info)/)
|
22
23
|
end
|
23
24
|
|
24
25
|
def test_user_name
|
@@ -0,0 +1,112 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestFakerNameSn < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@tester = Faker::NameSN
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_last_name
|
11
|
+
assert Faker::NameSN::LAST_NAMES.include?(@tester.last_name)
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_first_name_male
|
15
|
+
assert Faker::NameSN::FIRST_NAMES_MALE.include?(@tester.first_name_male)
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_first_name_female
|
19
|
+
assert Faker::NameSN::FIRST_NAMES_FEMALE.include?(@tester.first_name_female)
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_prefix_male
|
23
|
+
assert Faker::NameSN::PREFIX_MALE.include?(@tester.prefix_male)
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_prefix_female
|
27
|
+
assert Faker::NameSN::PREFIX_FEMALE.include?(@tester.prefix_female)
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_name_male
|
31
|
+
|
32
|
+
# => split the name_male into an array of words
|
33
|
+
parts = @tester.name_male.split(' ')
|
34
|
+
|
35
|
+
if parts.count == 3
|
36
|
+
|
37
|
+
# the value at the index 0 should be a valid! male_prefix
|
38
|
+
assert Faker::NameSN::PREFIX_MALE.include?(parts[0])
|
39
|
+
|
40
|
+
# the value at the index 1 should be a valid! male_first_name
|
41
|
+
assert Faker::NameSN::FIRST_NAMES_MALE.include?(parts[1])
|
42
|
+
|
43
|
+
# the value at the index 2 should be a valid! last_name
|
44
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[2])
|
45
|
+
|
46
|
+
elsif parts.count == 2
|
47
|
+
# the value at the index 0 should be a valid! male_prefix
|
48
|
+
assert Faker::NameSN::FIRST_NAMES_MALE.include?(parts[0])
|
49
|
+
|
50
|
+
# the value at the index 1 should be a valid! last_name
|
51
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[1])
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_name_female
|
58
|
+
|
59
|
+
# => split the name_female into an array of words
|
60
|
+
parts = @tester.name_female.split(' ')
|
61
|
+
|
62
|
+
if parts.count == 3
|
63
|
+
|
64
|
+
# the value at the index 0 should be a valid! male_prefix
|
65
|
+
assert Faker::NameSN::PREFIX_FEMALE.include?(parts[0])
|
66
|
+
|
67
|
+
# the value at the index 1 should be a valid! male_first_name
|
68
|
+
assert Faker::NameSN::FIRST_NAMES_FEMALE.include?(parts[1])
|
69
|
+
|
70
|
+
# the value at the index 2 should be a valid! last_name
|
71
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[2])
|
72
|
+
|
73
|
+
elsif parts.count == 2
|
74
|
+
# the value at the index 0 should be a valid! male_prefix
|
75
|
+
assert Faker::NameSN::FIRST_NAMES_FEMALE.include?(parts[0])
|
76
|
+
|
77
|
+
# the value at the index 1 should be a valid! last_name
|
78
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[1])
|
79
|
+
|
80
|
+
end
|
81
|
+
|
82
|
+
end
|
83
|
+
|
84
|
+
def test_senegalese_name
|
85
|
+
|
86
|
+
# => split the name into an array of words
|
87
|
+
parts = @tester.name_sn.split(' ')
|
88
|
+
|
89
|
+
if parts.count == 3
|
90
|
+
|
91
|
+
# the value at the index 0 should be a valid! male or female prefix
|
92
|
+
assert Faker::NameSN::PREFIX_FEMALE.include?(parts[0]) || Faker::NameSN::PREFIX_MALE.include?(parts[0])
|
93
|
+
|
94
|
+
# the value at the index 1 should be a valid! firstname male or female
|
95
|
+
assert Faker::NameSN::FIRST_NAMES_FEMALE.include?(parts[1]) || Faker::NameSN::FIRST_NAMES_MALE.include?(parts[1])
|
96
|
+
|
97
|
+
# the value at the index 2 should be a valid! firstname male or female
|
98
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[2])
|
99
|
+
|
100
|
+
|
101
|
+
elsif parts.count == 2
|
102
|
+
|
103
|
+
# the value at the index 0 should be a valid! firstname male or female
|
104
|
+
assert Faker::NameSN::FIRST_NAMES_FEMALE.include?(parts[0]) || Faker::NameSN::FIRST_NAMES_MALE.include?(parts[0])
|
105
|
+
|
106
|
+
# the value at the index 0 should be a valid! firstname male or female
|
107
|
+
assert Faker::NameSN::LAST_NAMES.include?(parts[1])
|
108
|
+
end
|
109
|
+
|
110
|
+
end
|
111
|
+
|
112
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
class TestHipsterIpsum < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_paragraph
|
6
|
+
assert_match /1\+|[ a-z]+/i, Faker::HipsterIpsum.paragraph
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_sentence
|
10
|
+
assert_match /1\+|[ a-z]+/i, Faker::HipsterIpsum.sentence
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_paragraphs
|
14
|
+
assert_match /1\+|[ a-z]+/i, Faker::HipsterIpsum.paragraphs.join(" ")
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_sentences
|
18
|
+
assert_match /1\+|[ a-z]+/i, Faker::HipsterIpsum.sentences.join(" ")
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_words
|
22
|
+
assert_match /1\+|[ a-z]+/i, Faker::HipsterIpsum.words.join(" ")
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_word
|
26
|
+
assert_match /1\+|[a-z]+/i, Faker::HipsterIpsum.word
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
data/test/test_lorem_cn.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
require 'helper'
|
3
3
|
|
4
4
|
class TestLoremCN < Test::Unit::TestCase
|
5
|
-
|
5
|
+
|
6
6
|
def test_paragraph
|
7
7
|
assert Faker::LoremCN.paragraph.length >= 3*4*2
|
8
8
|
end
|
@@ -14,16 +14,30 @@ class TestLoremCN < Test::Unit::TestCase
|
|
14
14
|
def test_paragraphs
|
15
15
|
assert Faker::LoremCN.paragraphs.length >= 2
|
16
16
|
end
|
17
|
+
def test_paragraphs_is_not_a_string_representation_of_an_array
|
18
|
+
assert_not_match /[\[\]]+/, [Faker::LoremCN.paragraphs].flatten.join(' ')
|
19
|
+
end
|
20
|
+
def test_paragraphs_is_an_array
|
21
|
+
assert Faker::LoremCN.paragraphs.class == Array
|
22
|
+
end
|
17
23
|
|
18
24
|
def test_sentences
|
19
25
|
assert Faker::LoremCN.sentences.length >= 2
|
20
26
|
end
|
21
|
-
|
27
|
+
def test_sentences_is_an_array
|
28
|
+
assert Faker::LoremCN.sentences.class == Array
|
29
|
+
end
|
30
|
+
def test_sentences_via_to_s_produces_string_terminated_with_period
|
31
|
+
string = Faker::LoremCN.sentences.to_s
|
32
|
+
assert string.class == String
|
33
|
+
assert string[-1] == '。'
|
34
|
+
end
|
35
|
+
|
22
36
|
def test_words
|
23
37
|
assert Faker::LoremCN.words.length >= 2
|
24
38
|
end
|
25
39
|
|
26
40
|
def test_word
|
27
|
-
assert Faker::LoremCN.word.length >=
|
41
|
+
assert Faker::LoremCN.word.length >= 1
|
28
42
|
end
|
29
43
|
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# => author: xarala
|
4
|
+
# => email: pathe.sene@xarala.sn
|
5
|
+
# => website: http://www.xarala.sn
|
6
|
+
|
7
|
+
require 'helper'
|
8
|
+
|
9
|
+
class TestPhoneNumberSN < Test::Unit::TestCase
|
10
|
+
|
11
|
+
def setup
|
12
|
+
@tester = Faker::PhoneNumberSN
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_mobile_phone_prefix
|
16
|
+
assert Faker::PhoneNumberSN::MobileOperatorsPrefix.include?(@tester.mobile_phone_prefix)
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_homework_phone_prefix
|
20
|
+
assert Faker::PhoneNumberSN::HomeWorkOperatorsPrefix.include?(@tester.homework_phone_prefix)
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
def test_short_phone_number
|
25
|
+
assert_match /\d{3}-\d{2}-\d{2}/, Faker::PhoneNumberSN.short_phone_number
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_mobile_phone_number
|
29
|
+
assert_match /(70|76|77)-\d{3}-\d{2}-\d{2}/, Faker::PhoneNumberSN.mobile_number
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_phone_number
|
33
|
+
assert_match /(33|70|76|77)-\d{3}-\d{2}-\d{2}/, Faker::PhoneNumberSN.phone_number
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_homework_phone_number
|
37
|
+
assert_match /(33)-(8|9)\d{2}-\d{2}-\d{2}/, Faker::PhoneNumberSN.homework_number
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
end
|