faker 1.8.6 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (623) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +1710 -9
  3. data/History.md +5 -5
  4. data/License.txt +2 -2
  5. data/README.md +331 -134
  6. data/bin/faker +5 -0
  7. data/lib/faker/blockchain/aeternity.rb +70 -0
  8. data/lib/faker/blockchain/bitcoin.rb +60 -0
  9. data/lib/faker/blockchain/ethereum.rb +26 -0
  10. data/lib/faker/blockchain/tezos.rb +135 -0
  11. data/lib/faker/books/book.rb +61 -0
  12. data/lib/faker/books/culture_series.rb +83 -0
  13. data/lib/faker/books/dune.rb +124 -0
  14. data/lib/faker/books/lovecraft.rb +249 -0
  15. data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
  16. data/lib/faker/creature/animal.rb +22 -0
  17. data/lib/faker/creature/bird.rb +203 -0
  18. data/lib/faker/creature/cat.rb +50 -0
  19. data/lib/faker/creature/dog.rb +115 -0
  20. data/lib/faker/creature/horse.rb +37 -0
  21. data/lib/faker/default/address.rb +348 -0
  22. data/lib/faker/default/adjective.rb +35 -0
  23. data/lib/faker/default/alphanumeric.rb +67 -0
  24. data/lib/faker/default/ancient.rb +59 -0
  25. data/lib/faker/default/app.rb +68 -0
  26. data/lib/faker/default/appliance.rb +33 -0
  27. data/lib/faker/default/artist.rb +20 -0
  28. data/lib/faker/default/avatar.rb +49 -0
  29. data/lib/faker/default/bank.rb +199 -0
  30. data/lib/faker/default/barcode.rb +165 -0
  31. data/lib/faker/default/beer.rb +113 -0
  32. data/lib/faker/default/blood.rb +48 -0
  33. data/lib/faker/default/boolean.rb +23 -0
  34. data/lib/faker/default/bossa_nova.rb +33 -0
  35. data/lib/faker/default/business.rb +50 -0
  36. data/lib/faker/default/camera.rb +46 -0
  37. data/lib/faker/default/cannabis.rb +135 -0
  38. data/lib/faker/default/chile_rut.rb +92 -0
  39. data/lib/faker/default/chuck_norris.rb +25 -0
  40. data/lib/faker/default/code.rb +269 -0
  41. data/lib/faker/default/coffee.rb +82 -0
  42. data/lib/faker/default/coin.rb +33 -0
  43. data/lib/faker/default/color.rb +150 -0
  44. data/lib/faker/default/commerce.rb +157 -0
  45. data/lib/faker/default/company.rb +571 -0
  46. data/lib/faker/default/compass.rb +202 -0
  47. data/lib/faker/default/computer.rb +63 -0
  48. data/lib/faker/default/construction.rb +83 -0
  49. data/lib/faker/default/cosmere.rb +138 -0
  50. data/lib/faker/default/crypto.rb +61 -0
  51. data/lib/faker/default/crypto_coin.rb +82 -0
  52. data/lib/faker/default/currency.rb +46 -0
  53. data/lib/faker/default/date.rb +153 -0
  54. data/lib/faker/default/dc_comics.rb +70 -0
  55. data/lib/faker/default/demographic.rb +94 -0
  56. data/lib/faker/default/dessert.rb +48 -0
  57. data/lib/faker/default/device.rb +85 -0
  58. data/lib/faker/default/driving_licence.rb +121 -0
  59. data/lib/faker/default/drone.rb +332 -0
  60. data/lib/faker/default/educator.rb +102 -0
  61. data/lib/faker/default/electrical_components.rb +48 -0
  62. data/lib/faker/default/emotion.rb +33 -0
  63. data/lib/faker/default/esport.rb +72 -0
  64. data/lib/faker/default/file.rb +81 -0
  65. data/lib/faker/default/fillmurray.rb +36 -0
  66. data/lib/faker/default/finance.rb +112 -0
  67. data/lib/faker/default/food.rb +126 -0
  68. data/lib/faker/default/funny_name.rb +90 -0
  69. data/lib/faker/default/gender.rb +46 -0
  70. data/lib/faker/default/greek_philosophers.rb +33 -0
  71. data/lib/faker/default/hacker.rb +103 -0
  72. data/lib/faker/default/hipster.rb +155 -0
  73. data/lib/faker/default/hobby.rb +22 -0
  74. data/lib/faker/default/house.rb +33 -0
  75. data/lib/faker/default/id_number.rb +410 -0
  76. data/lib/faker/default/industry_segments.rb +61 -0
  77. data/lib/faker/default/internet.rb +571 -0
  78. data/lib/faker/default/internet_http.rb +48 -0
  79. data/lib/faker/default/invoice.rb +123 -0
  80. data/lib/faker/default/job.rb +61 -0
  81. data/lib/faker/default/json.rb +125 -0
  82. data/lib/faker/default/kpop.rb +85 -0
  83. data/lib/faker/default/lorem.rb +245 -0
  84. data/lib/faker/default/lorem_flickr.rb +110 -0
  85. data/lib/faker/default/lorem_pixel.rb +64 -0
  86. data/lib/faker/default/markdown.rb +170 -0
  87. data/lib/faker/default/marketing.rb +22 -0
  88. data/lib/faker/default/measurement.rb +175 -0
  89. data/lib/faker/default/military.rb +98 -0
  90. data/lib/faker/default/mountain.rb +33 -0
  91. data/lib/faker/default/name.rb +152 -0
  92. data/lib/faker/default/nation.rb +73 -0
  93. data/lib/faker/default/nato_phonetic_alphabet.rb +20 -0
  94. data/lib/faker/default/nhs.rb +53 -0
  95. data/lib/faker/default/number.rb +244 -0
  96. data/lib/faker/default/omniauth.rb +471 -0
  97. data/lib/faker/default/phone_number.rb +133 -0
  98. data/lib/faker/default/placeholdit.rb +52 -0
  99. data/lib/faker/default/programming_language.rb +33 -0
  100. data/lib/faker/default/relationship.rb +87 -0
  101. data/lib/faker/default/religion.rb +6 -0
  102. data/lib/faker/default/restaurant.rb +63 -0
  103. data/lib/faker/default/science.rb +154 -0
  104. data/lib/faker/default/slack_emoji.rb +124 -0
  105. data/lib/faker/default/source.rb +63 -0
  106. data/lib/faker/default/south_africa.rb +141 -0
  107. data/lib/faker/default/space.rb +191 -0
  108. data/lib/faker/default/string.rb +59 -0
  109. data/lib/faker/default/stripe.rb +126 -0
  110. data/lib/faker/default/subscription.rb +70 -0
  111. data/lib/faker/default/superhero.rb +72 -0
  112. data/lib/faker/default/tea.rb +41 -0
  113. data/lib/faker/default/team.rb +74 -0
  114. data/lib/faker/default/time.rb +149 -0
  115. data/lib/faker/default/twitter.rb +209 -0
  116. data/lib/faker/default/types.rb +160 -0
  117. data/lib/faker/default/university.rb +75 -0
  118. data/lib/faker/default/vehicle.rb +342 -0
  119. data/lib/faker/default/verb.rb +72 -0
  120. data/lib/faker/default/vulnerability_identifier.rb +23 -0
  121. data/lib/faker/default/world_cup.rb +77 -0
  122. data/lib/faker/fantasy/tolkien.rb +67 -0
  123. data/lib/faker/games/clash_of_clans.rb +48 -0
  124. data/lib/faker/games/control.rb +113 -0
  125. data/lib/faker/games/dnd.rb +136 -0
  126. data/lib/faker/games/dota.rb +89 -0
  127. data/lib/faker/games/elder_scrolls.rb +139 -0
  128. data/lib/faker/games/fallout.rb +62 -0
  129. data/lib/faker/games/game.rb +48 -0
  130. data/lib/faker/games/half_life.rb +48 -0
  131. data/lib/faker/games/heroes.rb +61 -0
  132. data/lib/faker/games/heroes_of_the_storm.rb +72 -0
  133. data/lib/faker/games/league_of_legends.rb +87 -0
  134. data/lib/faker/games/minecraft.rb +113 -0
  135. data/lib/faker/games/myst.rb +74 -0
  136. data/lib/faker/games/overwatch.rb +48 -0
  137. data/lib/faker/games/pokemon.rb +48 -0
  138. data/lib/faker/games/sonic_the_hedgehog.rb +48 -0
  139. data/lib/faker/games/street_fighter.rb +61 -0
  140. data/lib/faker/games/super_mario.rb +48 -0
  141. data/lib/faker/games/super_smash_bros.rb +35 -0
  142. data/lib/faker/games/tarkov.rb +205 -0
  143. data/lib/faker/games/touhou.rb +75 -0
  144. data/lib/faker/games/warhammer_fantasy.rb +74 -0
  145. data/lib/faker/games/witcher.rb +126 -0
  146. data/lib/faker/games/world_of_warcraft.rb +60 -0
  147. data/lib/faker/games/zelda.rb +62 -0
  148. data/lib/faker/japanese_media/conan.rb +48 -0
  149. data/lib/faker/japanese_media/doraemon.rb +48 -0
  150. data/lib/faker/japanese_media/dragon_ball.rb +48 -0
  151. data/lib/faker/japanese_media/fullmetal_alchemist_brotherhood.rb +48 -0
  152. data/lib/faker/japanese_media/kamen_rider.rb +102 -0
  153. data/lib/faker/japanese_media/naruto.rb +61 -0
  154. data/lib/faker/japanese_media/one_piece.rb +87 -0
  155. data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
  156. data/lib/faker/japanese_media/sword_art_online.rb +61 -0
  157. data/lib/faker/locations/australia.rb +47 -0
  158. data/lib/faker/movies/back_to_the_future.rb +49 -0
  159. data/lib/faker/movies/departed.rb +49 -0
  160. data/lib/faker/movies/ghostbusters.rb +49 -0
  161. data/lib/faker/movies/hackers.rb +48 -0
  162. data/lib/faker/movies/harry_potter.rb +87 -0
  163. data/lib/faker/movies/hitchhikers_guide_to_the_galaxy.rb +106 -0
  164. data/lib/faker/movies/hobbit.rb +62 -0
  165. data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
  166. data/lib/faker/movies/lebowski.rb +48 -0
  167. data/lib/faker/movies/lord_of_the_rings.rb +49 -0
  168. data/lib/faker/movies/movie.rb +33 -0
  169. data/lib/faker/movies/princess_bride.rb +36 -0
  170. data/lib/faker/movies/room.rb +63 -0
  171. data/lib/faker/movies/star_wars.rb +269 -0
  172. data/lib/faker/movies/tron.rb +161 -0
  173. data/lib/faker/movies/v_for_vendetta.rb +50 -0
  174. data/lib/faker/music/grateful_dead.rb +37 -0
  175. data/lib/faker/music/hiphop.rb +48 -0
  176. data/lib/faker/music/music.rb +145 -0
  177. data/lib/faker/music/opera.rb +298 -0
  178. data/lib/faker/music/pearl_jam.rb +50 -0
  179. data/lib/faker/music/phish.rb +48 -0
  180. data/lib/faker/music/prince.rb +64 -0
  181. data/lib/faker/music/rock_band.rb +34 -0
  182. data/lib/faker/music/rush.rb +37 -0
  183. data/lib/faker/music/show.rb +49 -0
  184. data/lib/faker/music/umphreys_mcgee.rb +22 -0
  185. data/lib/faker/quotes/chiquito.rb +80 -0
  186. data/lib/faker/quotes/quote.rb +111 -0
  187. data/lib/faker/quotes/rajnikanth.rb +27 -0
  188. data/lib/faker/quotes/shakespeare.rb +111 -0
  189. data/lib/faker/religion/bible.rb +50 -0
  190. data/lib/faker/sports/basketball.rb +61 -0
  191. data/lib/faker/sports/football.rb +74 -0
  192. data/lib/faker/sports/mountaineering.rb +22 -0
  193. data/lib/faker/sports/sport.rb +110 -0
  194. data/lib/faker/sports/volleyball.rb +74 -0
  195. data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +37 -0
  196. data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
  197. data/lib/faker/tv_shows/bojack_horseman.rb +51 -0
  198. data/lib/faker/tv_shows/breaking_bad.rb +37 -0
  199. data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
  200. data/lib/faker/tv_shows/buffy.rb +89 -0
  201. data/lib/faker/tv_shows/community.rb +38 -0
  202. data/lib/faker/tv_shows/dr_who.rb +115 -0
  203. data/lib/faker/tv_shows/dumb_and_dumber.rb +51 -0
  204. data/lib/faker/tv_shows/family_guy.rb +51 -0
  205. data/lib/faker/tv_shows/final_space.rb +51 -0
  206. data/lib/faker/tv_shows/friends.rb +50 -0
  207. data/lib/faker/tv_shows/futurama.rb +65 -0
  208. data/lib/faker/tv_shows/game_of_thrones.rb +77 -0
  209. data/lib/faker/tv_shows/hey_arnold.rb +50 -0
  210. data/lib/faker/tv_shows/how_i_met_your_mother.rb +64 -0
  211. data/lib/faker/tv_shows/michael_scott.rb +23 -0
  212. data/lib/faker/tv_shows/new_girl.rb +38 -0
  213. data/lib/faker/tv_shows/parks_and_rec.rb +37 -0
  214. data/lib/faker/tv_shows/rick_and_morty.rb +51 -0
  215. data/lib/faker/tv_shows/ru_paul.rb +37 -0
  216. data/lib/faker/tv_shows/seinfeld.rb +51 -0
  217. data/lib/faker/tv_shows/silicon_valley.rb +118 -0
  218. data/lib/faker/tv_shows/simpsons.rb +65 -0
  219. data/lib/faker/tv_shows/south_park.rb +38 -0
  220. data/lib/faker/tv_shows/star_trek.rb +63 -0
  221. data/lib/faker/tv_shows/stargate.rb +51 -0
  222. data/lib/faker/tv_shows/stranger_things.rb +38 -0
  223. data/lib/faker/tv_shows/suits.rb +37 -0
  224. data/lib/faker/tv_shows/supernatural.rb +48 -0
  225. data/lib/faker/tv_shows/the_expanse.rb +63 -0
  226. data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +64 -0
  227. data/lib/faker/tv_shows/the_it_crowd.rb +64 -0
  228. data/lib/faker/tv_shows/the_office.rb +37 -0
  229. data/lib/faker/tv_shows/the_thick_of_it.rb +51 -0
  230. data/lib/faker/tv_shows/twin_peaks.rb +51 -0
  231. data/lib/faker/tv_shows/venture_bros.rb +65 -0
  232. data/lib/faker/version.rb +4 -2
  233. data/lib/faker.rb +108 -67
  234. data/lib/helpers/base58.rb +22 -0
  235. data/lib/helpers/char.rb +31 -35
  236. data/lib/helpers/unique_generator.rb +34 -6
  237. data/lib/locales/README.md +8 -9
  238. data/lib/locales/ar.yml +106 -0
  239. data/lib/locales/bg.yml +5 -2
  240. data/lib/locales/ca-CAT.yml +1 -1
  241. data/lib/locales/ca.yml +2 -4
  242. data/lib/locales/da-DK.yml +10 -6
  243. data/lib/locales/de-AT.yml +14 -5
  244. data/lib/locales/de-CH.yml +1696 -1
  245. data/lib/locales/de.yml +26 -12
  246. data/lib/locales/ee.yml +61 -0
  247. data/lib/locales/en/address.yml +500 -3
  248. data/lib/locales/en/adjective.yml +179 -0
  249. data/lib/locales/en/animal.yml +6 -0
  250. data/lib/locales/en/appliance.yml +5 -0
  251. data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
  252. data/lib/locales/en/australia.yml +107 -0
  253. data/lib/locales/en/bank.yml +275 -60
  254. data/lib/locales/en/barcode.yml +24 -0
  255. data/lib/locales/en/basketball.yml +99 -0
  256. data/lib/locales/en/beer.yml +2 -1
  257. data/lib/locales/en/bible.yml +90 -0
  258. data/lib/locales/en/big_bang_theory.yml +38 -0
  259. data/lib/locales/en/bird.yml +1281 -0
  260. data/lib/locales/en/blood.yml +13 -0
  261. data/lib/locales/en/bojack_horseman.yml +6 -0
  262. data/lib/locales/en/book.yml +487 -3
  263. data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
  264. data/lib/locales/en/buffy.yml +260 -0
  265. data/lib/locales/en/camera.yml +611 -0
  266. data/lib/locales/en/cannabis.yml +13 -0
  267. data/lib/locales/en/cat.yml +5 -4
  268. data/lib/locales/en/chiquito.yml +64 -0
  269. data/lib/locales/en/clash_of_clan.yml +101 -0
  270. data/lib/locales/en/coffee.yml +1 -1
  271. data/lib/locales/en/coin.yml +6 -0
  272. data/lib/locales/en/color.yml +1 -1
  273. data/lib/locales/en/commerce.yml +17 -0
  274. data/lib/locales/en/community.yml +33 -0
  275. data/lib/locales/en/company.yml +4 -2
  276. data/lib/locales/en/computer.yml +55 -0
  277. data/lib/locales/en/conan.yml +171 -0
  278. data/lib/locales/en/construction.yml +425 -0
  279. data/lib/locales/en/control.yml +247 -0
  280. data/lib/locales/en/cosmere.yml +57 -0
  281. data/lib/locales/en/crypto_coin.yml +25 -0
  282. data/lib/locales/en/culture_series.yml +307 -0
  283. data/lib/locales/en/currency.yml +6 -0
  284. data/lib/locales/en/dc_comics.yml +52 -0
  285. data/lib/locales/en/demographic.yml +218 -5
  286. data/lib/locales/en/departed.yml +50 -0
  287. data/lib/locales/en/dessert.yml +3 -3
  288. data/lib/locales/en/device.yml +115 -0
  289. data/lib/locales/en/dnd.yml +451 -0
  290. data/lib/locales/en/dog.yml +9 -9
  291. data/lib/locales/en/doraemon.yml +286 -0
  292. data/lib/locales/en/dota.yml +693 -0
  293. data/lib/locales/en/dr_who.yml +6 -2
  294. data/lib/locales/en/dragon_ball.yml +243 -1
  295. data/lib/locales/en/driving_license.yml +181 -0
  296. data/lib/locales/en/drone.yml +95 -0
  297. data/lib/locales/en/dumb_and_dumber.yml +1 -1
  298. data/lib/locales/en/dune.yml +270 -131
  299. data/lib/locales/en/educator.yml +76 -6
  300. data/lib/locales/en/elder_scrolls.yml +583 -5
  301. data/lib/locales/en/electrical_components.yml +6 -0
  302. data/lib/locales/en/emotion.yml +480 -0
  303. data/lib/locales/en/esport.yml +5 -5
  304. data/lib/locales/en/fallout.yml +313 -134
  305. data/lib/locales/en/file.yml +9 -1
  306. data/lib/locales/en/final_space.yml +37 -0
  307. data/lib/locales/en/finance.yml +139 -0
  308. data/lib/locales/en/fma_brotherhood.yml +78 -0
  309. data/lib/locales/en/food.yml +1054 -6
  310. data/lib/locales/en/football.yml +8 -0
  311. data/lib/locales/en/fresh_prince_of_bel_air.yml +1 -1
  312. data/lib/locales/en/friends.yml +3 -3
  313. data/lib/locales/en/futurama.yml +344 -0
  314. data/lib/locales/en/game.yml +294 -0
  315. data/lib/locales/en/gender.yml +6 -0
  316. data/lib/locales/en/ghostbusters.yml +91 -0
  317. data/lib/locales/en/grateful_dead.yml +48 -0
  318. data/lib/locales/en/greek_philosophers.yml +26 -0
  319. data/lib/locales/en/hackers.yml +53 -0
  320. data/lib/locales/en/half_life.yml +88 -0
  321. data/lib/locales/en/harry_potter.yml +2 -1
  322. data/lib/locales/en/heroes.yml +411 -0
  323. data/lib/locales/en/heroes_of_the_storm.yml +134 -0
  324. data/lib/locales/en/hobby.yml +171 -0
  325. data/lib/locales/en/horse.yml +6 -0
  326. data/lib/locales/en/house.yml +5 -0
  327. data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
  328. data/lib/locales/en/industry_segments.yml +7 -0
  329. data/lib/locales/en/internet.yml +137 -3
  330. data/lib/locales/en/invoice.yml +6 -0
  331. data/lib/locales/en/jack_handey.yml +54 -0
  332. data/lib/locales/en/job.yml +4 -2
  333. data/lib/locales/en/kamen_rider.yml +452 -0
  334. data/lib/locales/en/kpop.yml +8 -8
  335. data/lib/locales/en/league_of_legends.yml +287 -7
  336. data/lib/locales/en/lebowski.yml +1 -1
  337. data/lib/locales/en/lorem.yml +6 -0
  338. data/lib/locales/en/lovecraft.yml +76 -6
  339. data/lib/locales/en/marketing.yml +4 -0
  340. data/lib/locales/en/michael_scott.yml +45 -0
  341. data/lib/locales/en/military.yml +182 -0
  342. data/lib/locales/en/minecraft.yml +663 -0
  343. data/lib/locales/en/mountain.yml +171 -0
  344. data/lib/locales/en/mountaineering.yml +14 -0
  345. data/lib/locales/en/movie.yml +194 -2
  346. data/lib/locales/en/music.yml +461 -1
  347. data/lib/locales/en/myst.yml +104 -0
  348. data/lib/locales/en/name.yml +15 -14
  349. data/lib/locales/en/naruto.yml +230 -0
  350. data/lib/locales/en/nation.yml +11 -0
  351. data/lib/locales/en/nato_phonetic_alphabet.yml +4 -0
  352. data/lib/locales/en/new_girl.yml +40 -0
  353. data/lib/locales/en/one_piece.yml +2 -2
  354. data/lib/locales/en/opera.yml +340 -0
  355. data/lib/locales/en/overwatch.yml +2650 -33
  356. data/lib/locales/en/parks_and_rec.yml +7 -0
  357. data/lib/locales/en/pearl_jam.yml +213 -0
  358. data/lib/locales/en/phish.yml +395 -0
  359. data/lib/locales/en/phone_number.yml +2 -1
  360. data/lib/locales/en/pokemon.yml +419 -5
  361. data/lib/locales/en/prince.yml +227 -0
  362. data/lib/locales/en/princess_bride.yml +5 -0
  363. data/lib/locales/en/programming_language.yml +2 -1
  364. data/lib/locales/en/quote.yml +695 -0
  365. data/lib/locales/en/rajnikanth.yml +77 -0
  366. data/lib/locales/en/relationship.yml +10 -0
  367. data/lib/locales/en/restaurant.yml +129 -0
  368. data/lib/locales/en/rock_band.yml +1 -0
  369. data/lib/locales/en/room.yml +68 -0
  370. data/lib/locales/en/rupaul.yml +51 -21
  371. data/lib/locales/en/rush.yml +32 -0
  372. data/lib/locales/en/science.yml +481 -2
  373. data/lib/locales/en/seinfeld.yml +3 -2
  374. data/lib/locales/en/shakespeare.yml +23 -26
  375. data/lib/locales/en/show.yml +597 -0
  376. data/lib/locales/en/silicon_valley.yml +1 -0
  377. data/lib/locales/en/simpsons.yml +668 -0
  378. data/lib/locales/en/sonic_the_hedgehog.yml +410 -0
  379. data/lib/locales/en/source.yml +51 -0
  380. data/lib/locales/en/south_park.yml +5 -0
  381. data/lib/locales/en/space.yml +3 -2
  382. data/lib/locales/en/sport.yml +130 -0
  383. data/lib/locales/en/star_trek.yml +1 -1
  384. data/lib/locales/en/star_wars.yml +568 -210
  385. data/lib/locales/en/stargate.yml +1 -2
  386. data/lib/locales/en/stranger_thing.yml +36 -0
  387. data/lib/locales/en/street_fighter.yml +1524 -0
  388. data/lib/locales/en/stripe.yml +42 -0
  389. data/lib/locales/en/studio_ghibli.yml +107 -0
  390. data/lib/locales/en/subscription.yml +8 -0
  391. data/lib/locales/en/suits.yml +45 -0
  392. data/lib/locales/en/super_mario.yml +58 -0
  393. data/lib/locales/en/super_smash_bros.yml +223 -0
  394. data/lib/locales/en/supernatural.yml +141 -0
  395. data/lib/locales/en/sword_art_online.yml +334 -0
  396. data/lib/locales/en/tarkov.yml +593 -0
  397. data/lib/locales/en/tea.yml +172 -0
  398. data/lib/locales/en/team.yml +1 -1
  399. data/lib/locales/en/the_expanse.yml +7 -0
  400. data/lib/locales/en/the_it_crowd.yml +155 -0
  401. data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
  402. data/lib/locales/en/the_office.yml +86 -0
  403. data/lib/locales/en/tolkien.yml +2453 -0
  404. data/lib/locales/en/touhou.yml +839 -0
  405. data/lib/locales/en/tron.yml +227 -0
  406. data/lib/locales/en/vehicle.yml +2810 -48
  407. data/lib/locales/en/verbs.yml +8 -0
  408. data/lib/locales/en/volleyball.yml +501 -0
  409. data/lib/locales/en/warhammer_fantasy.yml +582 -0
  410. data/lib/locales/en/witcher.yml +428 -8
  411. data/lib/locales/en/world_cup.yml +271 -0
  412. data/lib/locales/en/world_of_warcraft.yml +124 -5
  413. data/lib/locales/en/zelda.yml +964 -5
  414. data/lib/locales/en-AU.yml +50 -8
  415. data/lib/locales/en-CA.yml +28 -2
  416. data/lib/locales/en-GB.yml +2 -1
  417. data/lib/locales/en-IND.yml +5 -2
  418. data/lib/locales/en-MS.yml +8 -1
  419. data/lib/locales/en-NEP.yml +6 -3
  420. data/lib/locales/en-NG.yml +2 -0
  421. data/lib/locales/en-NZ.yml +140 -17
  422. data/lib/locales/en-PAK.yml +4 -2
  423. data/lib/locales/en-SG.yml +6 -1
  424. data/lib/locales/en-TH.yml +360 -0
  425. data/lib/locales/en-US.yml +38 -10
  426. data/lib/locales/en-ZA.yml +114 -17
  427. data/lib/locales/en-au-ocker.yml +2 -1
  428. data/lib/locales/en.yml +0 -1
  429. data/lib/locales/es-AR.yml +4600 -0
  430. data/lib/locales/es-MX.yml +17 -1
  431. data/lib/locales/es.yml +75 -1
  432. data/lib/locales/fa.yml +6 -0
  433. data/lib/locales/fi-FI.yml +14 -7
  434. data/lib/locales/fr/address.yml +21 -0
  435. data/lib/locales/fr/adjective.yml +266 -0
  436. data/lib/locales/fr/ancient.yml +141 -0
  437. data/lib/locales/fr/animal.yml +5 -0
  438. data/lib/locales/fr/appliance.yml +4 -0
  439. data/lib/locales/fr/book.yml +7 -0
  440. data/lib/locales/fr/color.yml +4 -0
  441. data/lib/locales/fr/company.yml +17 -0
  442. data/lib/locales/fr/compass.yml +23 -0
  443. data/lib/locales/fr/demographic.yml +4 -0
  444. data/lib/locales/fr/gender.yml +6 -0
  445. data/lib/locales/fr/internet.yml +5 -0
  446. data/lib/locales/fr/lorem.yml +5 -0
  447. data/lib/locales/fr/measurement.yml +7 -0
  448. data/lib/locales/fr/name.yml +21 -0
  449. data/lib/locales/fr/phone_number.yml +7 -0
  450. data/lib/locales/fr/pokemon.yml +7 -0
  451. data/lib/locales/fr-CA.yml +107 -0
  452. data/lib/locales/fr-CH.yml +78 -0
  453. data/lib/locales/fr.yml +1 -66
  454. data/lib/locales/he.yml +2 -0
  455. data/lib/locales/hy.yml +411 -0
  456. data/lib/locales/id.yml +7 -2
  457. data/lib/locales/it.yml +15 -3
  458. data/lib/locales/ja/README.md +13 -0
  459. data/lib/locales/ja/address.yml +120539 -0
  460. data/lib/locales/ja/adjective.yml +148 -0
  461. data/lib/locales/ja/ancient.yml +4 -0
  462. data/lib/locales/ja/animal.yml +5 -0
  463. data/lib/locales/ja/bank.yml +4 -0
  464. data/lib/locales/ja/book.yml +7 -0
  465. data/lib/locales/ja/cat.yml +5 -0
  466. data/lib/locales/ja/coffee.yml +4 -0
  467. data/lib/locales/ja/color.yml +4 -0
  468. data/lib/locales/ja/commerce.yml +11 -0
  469. data/lib/locales/ja/company.yml +8 -0
  470. data/lib/locales/ja/dog.yml +6 -0
  471. data/lib/locales/ja/emotion.yml +51 -0
  472. data/lib/locales/ja/food.yml +4 -0
  473. data/lib/locales/ja/gender.yml +4 -0
  474. data/lib/locales/ja/lorem.yml +9 -0
  475. data/lib/locales/ja/name.yml +13 -0
  476. data/lib/locales/ja/naruto.yml +230 -0
  477. data/lib/locales/ja/overwatch.yml +5 -0
  478. data/lib/locales/ja/phone_number.yml +7 -0
  479. data/lib/locales/ja/pokemon.yml +7 -0
  480. data/lib/locales/ja/relationship.yml +10 -0
  481. data/lib/locales/ja/restaurant.yml +11 -0
  482. data/lib/locales/ja/space.yml +5 -0
  483. data/lib/locales/ja/studio_ghibli.yml +112 -0
  484. data/lib/locales/ja/subscription.yml +8 -0
  485. data/lib/locales/ja/super_mario.yml +9 -0
  486. data/lib/locales/ja/super_smash_bros.yml +8 -0
  487. data/lib/locales/ja/university.yml +9 -0
  488. data/lib/locales/ja/zelda.yml +5 -0
  489. data/lib/locales/ko.yml +96 -2
  490. data/lib/locales/lt.yml +35 -0
  491. data/lib/locales/lv.yml +55 -0
  492. data/lib/locales/mi-NZ.yml +281 -0
  493. data/lib/locales/nb-NO.yml +15 -6
  494. data/lib/locales/nl.yml +13 -4
  495. data/lib/locales/no.yml +7 -0
  496. data/lib/locales/pl.yml +13 -2
  497. data/lib/locales/pt-BR.yml +631 -18
  498. data/lib/locales/pt.yml +16 -6
  499. data/lib/locales/ru.yml +45 -2
  500. data/lib/locales/sk.yml +21 -13
  501. data/lib/locales/sv.yml +15 -7
  502. data/lib/locales/th.yml +380 -0
  503. data/lib/locales/tr.yml +14 -0
  504. data/lib/locales/uk.yml +17 -4
  505. data/lib/locales/vi.yml +7 -2
  506. data/lib/locales/zh-CN.yml +4 -4
  507. data/lib/locales/zh-TW.yml +3 -1
  508. metadata +563 -128
  509. data/lib/extensions/array.rb +0 -22
  510. data/lib/extensions/symbol.rb +0 -9
  511. data/lib/faker/address.rb +0 -67
  512. data/lib/faker/ancient.rb +0 -21
  513. data/lib/faker/app.rb +0 -23
  514. data/lib/faker/aqua_teen_hunger_force.rb +0 -9
  515. data/lib/faker/artist.rb +0 -9
  516. data/lib/faker/avatar.rb +0 -15
  517. data/lib/faker/back_to_the_future.rb +0 -17
  518. data/lib/faker/bank.rb +0 -37
  519. data/lib/faker/beer.rb +0 -40
  520. data/lib/faker/bitcoin.rb +0 -48
  521. data/lib/faker/book.rb +0 -23
  522. data/lib/faker/boolean.rb +0 -9
  523. data/lib/faker/bossa_nova.rb +0 -13
  524. data/lib/faker/breaking_bad.rb +0 -16
  525. data/lib/faker/business.rb +0 -22
  526. data/lib/faker/cat.rb +0 -19
  527. data/lib/faker/chuck_norris.rb +0 -11
  528. data/lib/faker/code.rb +0 -147
  529. data/lib/faker/coffee.rb +0 -29
  530. data/lib/faker/color.rb +0 -30
  531. data/lib/faker/commerce.rb +0 -64
  532. data/lib/faker/company.rb +0 -162
  533. data/lib/faker/compass.rb +0 -65
  534. data/lib/faker/crypto.rb +0 -19
  535. data/lib/faker/date.rb +0 -78
  536. data/lib/faker/demographic.rb +0 -35
  537. data/lib/faker/dessert.rb +0 -19
  538. data/lib/faker/dog.rb +0 -39
  539. data/lib/faker/dr_who.rb +0 -34
  540. data/lib/faker/dragon_ball.rb +0 -9
  541. data/lib/faker/dumb_and_dumber.rb +0 -17
  542. data/lib/faker/dune.rb +0 -54
  543. data/lib/faker/educator.rb +0 -23
  544. data/lib/faker/elder_scrolls.rb +0 -21
  545. data/lib/faker/esport.rb +0 -25
  546. data/lib/faker/fallout.rb +0 -21
  547. data/lib/faker/family_guy.rb +0 -17
  548. data/lib/faker/file.rb +0 -24
  549. data/lib/faker/fillmurray.rb +0 -14
  550. data/lib/faker/finance.rb +0 -28
  551. data/lib/faker/food.rb +0 -25
  552. data/lib/faker/friends.rb +0 -17
  553. data/lib/faker/funny_name.rb +0 -43
  554. data/lib/faker/game_of_thrones.rb +0 -25
  555. data/lib/faker/hacker.rb +0 -45
  556. data/lib/faker/harry_potter.rb +0 -25
  557. data/lib/faker/hey_arnold.rb +0 -17
  558. data/lib/faker/hipster.rb +0 -59
  559. data/lib/faker/hitchhikers_guide_to_the_galaxy.rb +0 -33
  560. data/lib/faker/hobbit.rb +0 -21
  561. data/lib/faker/how_i_met_your_mother.rb +0 -21
  562. data/lib/faker/id_number.rb +0 -36
  563. data/lib/faker/internet.rb +0 -178
  564. data/lib/faker/job.rb +0 -16
  565. data/lib/faker/kpop.rb +0 -29
  566. data/lib/faker/league_of_legends.rb +0 -29
  567. data/lib/faker/lebowski.rb +0 -17
  568. data/lib/faker/lord_of_the_rings.rb +0 -13
  569. data/lib/faker/lorem.rb +0 -68
  570. data/lib/faker/lorem_pixel.rb +0 -21
  571. data/lib/faker/lovecraft.rb +0 -73
  572. data/lib/faker/markdown.rb +0 -67
  573. data/lib/faker/matz.rb +0 -9
  574. data/lib/faker/measurement.rb +0 -127
  575. data/lib/faker/most_interesting_man_in_the_world.rb +0 -9
  576. data/lib/faker/movie.rb +0 -9
  577. data/lib/faker/music.rb +0 -33
  578. data/lib/faker/name.rb +0 -46
  579. data/lib/faker/number.rb +0 -86
  580. data/lib/faker/omniauth.rb +0 -340
  581. data/lib/faker/one_piece.rb +0 -29
  582. data/lib/faker/overwatch.rb +0 -17
  583. data/lib/faker/phone_number.rb +0 -44
  584. data/lib/faker/placeholdit.rb +0 -20
  585. data/lib/faker/pokemon.rb +0 -17
  586. data/lib/faker/programming_language.rb +0 -13
  587. data/lib/faker/rick_and_morty.rb +0 -17
  588. data/lib/faker/robin.rb +0 -9
  589. data/lib/faker/rock_band.rb +0 -9
  590. data/lib/faker/rupaul.rb +0 -15
  591. data/lib/faker/science.rb +0 -15
  592. data/lib/faker/seinfeld.rb +0 -13
  593. data/lib/faker/shakespeare.rb +0 -40
  594. data/lib/faker/silicon_valley.rb +0 -33
  595. data/lib/faker/simpsons.rb +0 -22
  596. data/lib/faker/slack_emoji.rb +0 -43
  597. data/lib/faker/space.rb +0 -58
  598. data/lib/faker/star_trek.rb +0 -21
  599. data/lib/faker/star_wars.rb +0 -102
  600. data/lib/faker/stargate.rb +0 -17
  601. data/lib/faker/superhero.rb +0 -25
  602. data/lib/faker/team.rb +0 -24
  603. data/lib/faker/the_fresh_prince_of_bel_air.rb +0 -17
  604. data/lib/faker/the_thick_of_it.rb +0 -17
  605. data/lib/faker/time.rb +0 -51
  606. data/lib/faker/twin_peaks.rb +0 -17
  607. data/lib/faker/twitter.rb +0 -172
  608. data/lib/faker/types.rb +0 -93
  609. data/lib/faker/umphreys_mcgee.rb +0 -9
  610. data/lib/faker/university.rb +0 -28
  611. data/lib/faker/v_for_vendetta.rb +0 -17
  612. data/lib/faker/vehicle.rb +0 -39
  613. data/lib/faker/venture_bros.rb +0 -21
  614. data/lib/faker/witcher.rb +0 -29
  615. data/lib/faker/world_of_warcraft.rb +0 -13
  616. data/lib/faker/yoda.rb +0 -10
  617. data/lib/faker/zelda.rb +0 -22
  618. data/lib/locales/en/hobbit.yml +0 -19
  619. data/lib/locales/en/lord_of_the_rings.yml +0 -5
  620. data/lib/locales/en/matz.yml +0 -28
  621. data/lib/locales/en/most_interesting_man_in_the_world.yml +0 -106
  622. data/lib/locales/en/robin.yml +0 -4
  623. data/lib/locales/ja.yml +0 -47
data/History.md CHANGED
@@ -33,7 +33,7 @@
33
33
  ## v1.6.0 (2015-11-23)
34
34
  * Lots of bug fixes -- most notably, a fix for email addresses and domains in non-en locales
35
35
  * Updated locales: de, en-AU, en-NZ, en-SG, en-US, en-au-ocker, en, es, fr, he, it, ja, nb-NO, pl, pt-BR, sk, and zh-CN
36
- * Updated classes: Address, Avatar, Book, Code, Commerce, Company, Hipster, IDNumber, Internet, Number, Placeholdit, Shakespeare, and Time
36
+ * Updated classes: Address, Avatar, Book, Code, Commerce, Company, Hipster, IDNumber, Internet, Number, Placeholdit, Shakespeare, and Time
37
37
 
38
38
  ## v1.5.0 (2015-08-17)
39
39
  * Added logos
@@ -83,7 +83,7 @@
83
83
  * 1 major change:
84
84
  * Removed deprecated methods from Address: earth_country, us_state, us_state_abbr, uk_postcode, uk_county
85
85
  * Many minor changes (please see github pull requests for credits)
86
- * Added many localizations
86
+ * Added many localizations
87
87
  * Added range and array support for Lorem
88
88
 
89
89
  ## v1.0.1 (2011-09-27)
@@ -104,7 +104,7 @@
104
104
  * Added bork locale for bork-ified lorem [johnbentcope]
105
105
  * Added IPv6 address generator [jc00ke]
106
106
  * Removed deprecation warnings for Array#rand [chrismarshall]
107
- * Added German translation and I18n improvments [Matthias Kühnert]
107
+ * Added German translation and I18n improvements [Matthias Kühnert]
108
108
  * Added Dutch translation [moretea]
109
109
  * Added Lat/Long generator [Andy Callaghan]
110
110
  * Added buzzword-laden title generator [supercleanse]
@@ -117,7 +117,7 @@
117
117
  * Added Canadian translation [igbanam]
118
118
  * Added Norwegian translation [kytrinyx]
119
119
  * Lots of translation-related cleanup [kytrinyx]
120
-
120
+
121
121
 
122
122
  ## v0.9.5 (2011-01-27)
123
123
  * 1 minor bug fix:
@@ -159,7 +159,7 @@
159
159
  * 3 major enhancements:
160
160
  * Added Lorem to generate fake Latin
161
161
  * Added secondary_address to Address, and made inclusion of
162
- secondary address in street_address optional (false by
162
+ secondary address in street_address optional (false by
163
163
  default).
164
164
  * Added UK address methods [Caius Durling]
165
165
 
data/License.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2007-2010 Benjamin Curtis
1
+ Copyright (c) 2007-2019 Benjamin Curtis
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -17,4 +17,4 @@ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
17
  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
18
  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
19
  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -1,7 +1,13 @@
1
- # Faker [![Build Status](https://travis-ci.org/stympy/faker.svg?branch=master)](https://travis-ci.org/stympy/faker) [![Gem Version](https://badge.fury.io/rb/faker.svg)](https://badge.fury.io/rb/faker)
1
+ ![logotype a happy-07](https://user-images.githubusercontent.com/36028424/40263395-4318481e-5b44-11e8-92e5-3dcc1ce169b3.png)
2
2
 
3
+ # Faker
4
+ [![Tests](https://github.com/faker-ruby/faker/workflows/Tests/badge.svg)](https://github.com/faker-ruby/faker/actions?query=workflow%3ATests)
5
+ [![Gem Version](https://badge.fury.io/rb/faker.svg)](https://badge.fury.io/rb/faker)
6
+ [![Inline docs](https://inch-ci.org/github/faker-ruby/faker.svg?branch=main)](https://inch-ci.org/github/faker-ruby/faker)
7
+ [![Test Coverage](https://api.codeclimate.com/v1/badges/ef54c7f9df86e965d64b/test_coverage)](https://codeclimate.com/github/stympy/faker/test_coverage)
8
+ [![Maintainability](https://api.codeclimate.com/v1/badges/ef54c7f9df86e965d64b/maintainability)](https://codeclimate.com/github/stympy/faker/maintainability)
3
9
 
4
- This gem is a port of Perl's Data::Faker library that generates fake data.
10
+ This gem is a port of [Perl's Data::Faker library](https://metacpan.org/pod/Data::Faker) that generates fake data.
5
11
 
6
12
  It comes in very handy for taking screenshots (taking screenshots for my
7
13
  project, [Catch the Best](http://catchthebest.com/) was the original impetus
@@ -9,134 +15,52 @@ for the creation of this gem), having real-looking test data, and having your
9
15
  database populated with more than one or two records while you're doing
10
16
  development.
11
17
 
12
- ### NOTE
18
+ - [Faker](#faker)
19
+ - [NOTE](#note)
20
+ - [Installing](#installing)
21
+ - [Usage](#usage)
22
+ - [CLI](#cli)
23
+ - [Ensuring unique values](#ensuring-unique-values)
24
+ - [Deterministic Random](#deterministic-random)
25
+ - [Generators](#generators)
26
+ - [Default](#default)
27
+ - [Blockchain](#blockchain)
28
+ - [Books](#books)
29
+ - [Fantasy](#fantasy)
30
+ - [Creature](#creature)
31
+ - [Games](#games)
32
+ - [Japanese Media](#japanese-media)
33
+ - [Movies](#movies)
34
+ - [Music](#music)
35
+ - [Quotes](#quotes)
36
+ - [Sports](#sports)
37
+ - [Tv Shows](#tv-shows)
38
+ - [Customization](#customization)
39
+ - [Contributing](#contributing)
40
+ - [Contact](#contact)
41
+ - [License](#license)
13
42
 
43
+ ### NOTE
14
44
  * While Faker generates data at random, returned values are not guaranteed to be unique by default.
15
- You must explicity specify when you require unique values, see [details](#ensuring-unique-values).
45
+ You must explicitly specify when you require unique values, see [details](#ensuring-unique-values).
16
46
  Values also can be deterministic if you use the deterministic feature, see [details](#deterministic-random)
17
- * This is the `master` branch of Faker and may contain changes that are not yet released.
47
+ * Minitest and Faker >= 2.22 users might need to add the following to the `test_helper.rb` or `rails_helper.rb` file:
48
+ `Faker::Config.random = Random.new`. See [Issue #2534](https://github.com/faker-ruby/faker/issues/2534) for more details.
49
+ * This is the `main` branch of Faker and may contain changes that are not yet released.
18
50
  Please refer the README of your version for the available methods.
19
51
  List of all versions is [available here](https://github.com/stympy/faker/releases).
20
52
 
21
- Contents
22
- --------
23
-
24
- - [Installing](#installing)
25
- - [Usage](#usage)
26
- - [Faker::Address](doc/address.md)
27
- - [Faker::Ancient](doc/ancient.md)
28
- - [Faker::App](doc/app.md)
29
- - [Faker::AquaTeenHungerForce](doc/aqua_teen_hunger_force.md)
30
- - [Faker::Avatar](doc/avatar.md)
31
- - [Faker::BackToTheFuture](doc/back_to_the_future.md)
32
- - [Faker::Bank](doc/bank.md)
33
- - [Faker::Beer](doc/beer.md)
34
- - [Faker::Bitcoin](doc/bitcoin.md)
35
- - [Faker::Book](doc/book.md)
36
- - [Faker::Boolean](doc/boolean.md)
37
- - [Faker::BossaNova](doc/bossa_nova.md)
38
- - [Faker::Business](doc/business.md)
39
- - [Faker::Cat](doc/cat.md)
40
- - [Faker::ChuckNorris](doc/chuck_norris.md)
41
- - [Faker::Code](doc/code.md)
42
- - [Faker::Coffee](doc/coffee.md)
43
- - [Faker::Color](doc/color.md)
44
- - [Faker::Commerce](doc/commerce.md)
45
- - [Faker::Company](doc/company.md)
46
- - [Faker::Compass](doc/compass.md)
47
- - [Faker::Crypto](doc/crypto.md)
48
- - [Faker::Date](doc/date.md)
49
- - [Faker::Demographic](doc/demographic.md)
50
- - [Faker::Dessert](doc/dessert.md)
51
- - [Faker::Dog](doc/dog.md)
52
- - [Faker::DragonBall](doc/dragon_ball.md)
53
- - [Faker::DrWho](doc/dr_who.md)
54
- - [Faker::Dune](doc/dune.md)
55
- - [Faker::Educator](doc/educator.md)
56
- - [Faker::ElderScrolls](doc/elder_scrolls.md)
57
- - [Faker::Fallout](doc/fallout.md)
58
- - [Faker::FamilyGuy](doc/family_guy.md)
59
- - [Faker::File](doc/file.md)
60
- - [Faker::Fillmurray](doc/fillmurray.md)
61
- - [Faker::Food](doc/food.md)
62
- - [Faker::Friends](doc/friends.md)
63
- - [Faker::GameOfThrones](doc/game_of_thrones.md)
64
- - [Faker::Hacker](doc/hacker.md)
65
- - [Faker::HarryPotter](doc/harry_potter.md)
66
- - [Faker::HeyArnold](doc/hey_arnold.md)
67
- - [Faker::Hipster](doc/hipster.md)
68
- - [Faker::Hobbit](doc/hobbit.md)
69
- - [Faker::HowIMetYourMother](doc/how_i_met_your_mother.md)
70
- - [Faker::HitchhikersGuideToTheGalaxy](doc/hitchhikers_guide_to_the_galaxy.md)
71
- - [Faker::Internet](doc/internet.md)
72
- - [Faker::Job](doc/job.md)
73
- - [Faker::Kpop](doc/kpop.md)
74
- - [Faker::LeagueOfLegends](doc/league_of_legends.md)
75
- - [Faker::LordOfTheRings](doc/lord_of_the_rings.md)
76
- - [Faker::LoremPixel](doc/lorem_pixel.md)
77
- - [Faker::Lorem](doc/lorem.md)
78
- - [Faker::Lovecraft](doc/lovecraft.md)
79
- - [Faker::Markdown](doc/markdown.md)
80
- - [Faker::Matz](doc/matz.md)
81
- - [Faker::Measurement](doc/measurement.md)
82
- - [Faker::MostInterestingManInTheWorld](doc/most_interesting_man_in_the_world.md)
83
- - [Faker::Movie](doc/movie.md)
84
- - [Faker::Music](doc/music.md)
85
- - [Faker::Name](doc/name.md)
86
- - [Faker::Number](doc/number.md)
87
- - [Faker::Omniauth](doc/omniauth.md)
88
- - [Faker::OnePiece](doc/one_piece.md)
89
- - [Faker::Overwatch](doc/overwatch.md)
90
- - [Faker::PhoneNumber](doc/phone_number.md)
91
- - [Faker::Placeholdit](doc/placeholdit.md)
92
- - [Faker::Pokemon](doc/pokemon.md)
93
- - [Faker::ProgrammingLanguage](doc/programming_language.md)
94
- - [Faker::RickAndMorty](doc/rick_and_morty.md)
95
- - [Faker::Robin](doc/robin.md)
96
- - [Faker::RockBand](doc/rock_band.md)
97
- - [Faker::RuPaul](doc/rupaul.md)
98
- - [Faker::Science](doc/science.md)
99
- - [Faker::Seinfeld](doc/seinfeld.md)
100
- - [Faker::SiliconValley](doc/silicon_valley.md)
101
- - [Faker::Simpsons](doc/simpsons.md)
102
- - [Faker::SlackEmoji](doc/slack_emoji.md)
103
- - [Faker::Space](doc/space.md)
104
- - [Faker::StarTrek](doc/star_trek.md)
105
- - [Faker::StarWars](doc/star_wars.md)
106
- - [Faker::Superhero](doc/superhero.md)
107
- - [Faker::Team](doc/team.md)
108
- - [Faker::TheFreshPrinceOfBelAir](doc/the_fresh_prince_of_bel_air.md)
109
- - [Faker::TheThickOfIt](doc/the_thick_of_it.md)
110
- - [Faker::Time](doc/time.md)
111
- - [Faker::TwinPeaks](doc/twin_peaks.md)
112
- - [Faker::Twitter](doc/twitter.md)
113
- - [Faker::Types](doc/types.md)
114
- - [Faker::UmphreysMcgee](doc/umphreys_mcgee.md)
115
- - [Faker::University](doc/university.md)
116
- - [Faker::Vehicle](doc/vehicle.md)
117
- - [Faker::VentureBros](doc/venture_bros.md)
118
- - [Faker::VForVendetta](doc/v_for_vendetta.md)
119
- - [Faker::Witcher](doc/witcher.md)
120
- - [Faker::WorldOfWarcraft](doc/world_of_warcraft.md)
121
- - [Faker::Zelda](doc/zelda.md)
122
- - [Customization](#customization)
123
- - [Contributing](#contributing)
124
- - [Contact](#contact)
125
- - [License](#license)
126
-
127
53
  ## Installing
128
-
129
54
  ```bash
130
55
  gem install faker
131
56
  ```
132
- Note: if you are getting a `uninitialized constant Faker::[some_class]` error, your version of the gem is behind the one documented here. To make sure that your gem is the one documented here, change the line in your gemfile to:
57
+ Note: if you are getting a `uninitialized constant Faker::[some_class]` error, your version of the gem is behind the one documented here. To make sure that your gem is the one documented here, change the line in your Gemfile to:
133
58
 
134
59
  ```ruby
135
- gem 'faker', :git => 'https://github.com/stympy/faker.git', :branch => 'master'
60
+ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main'
136
61
  ```
137
62
 
138
63
  ## Usage
139
-
140
64
  ```ruby
141
65
  require 'faker'
142
66
 
@@ -145,8 +69,10 @@ Faker::Name.name #=> "Christophe Bartell"
145
69
  Faker::Internet.email #=> "kirsten.greenholt@corkeryfisher.info"
146
70
  ```
147
71
 
148
- ### Ensuring unique values
72
+ ### CLI
73
+ Instructions are available in the [faker-bot README](https://github.com/faker-ruby/faker-bot).
149
74
 
75
+ ### Ensuring unique values
150
76
  Prefix your method call with `unique`. For example:
151
77
  ```ruby
152
78
  Faker::Name.unique.name # This will return a unique name every time it is called
@@ -161,8 +87,19 @@ Faker::Name.unique.clear # Clears used values for Faker::Name
161
87
  Faker::UniqueGenerator.clear # Clears used values for all generators
162
88
  ```
163
89
 
164
- ### Deterministic Random
90
+ You also can give some already used values to the unique generator if you have
91
+ collisions with the generated data (i.e: using FactoryBot with random and
92
+ manually set values).
93
+
94
+ ```ruby
95
+ # Usage:
96
+ # Faker::<generator>.unique.exclude(method, arguments, list)
165
97
 
98
+ # Add 'azerty' and 'wxcvbn' to the string generator with 6 char length
99
+ Faker::Lorem.unique.exclude :string, [number: 6], %w[azerty wxcvbn]
100
+ ```
101
+
102
+ ### Deterministic Random
166
103
  Faker supports seeding of its pseudo-random number generator (PRNG) to provide deterministic output of repeated method calls.
167
104
 
168
105
  ```ruby
@@ -178,42 +115,302 @@ Faker::Config.random.seed #=> 185180369676275068918401850258677722187
178
115
  Faker::Company.bs #=> "cultivate viral synergies"
179
116
  ```
180
117
 
118
+ ## Generators
119
+ **NOTE: Some of the generators below aren't released yet. If you want to use them, change the line in your gemfile to:**
120
+
121
+ ```ruby
122
+ gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'main'
123
+ ```
124
+
125
+ ### Default
126
+ - [Faker::Address](doc/default/address.md)
127
+ - [Faker::Alphanumeric](doc/default/alphanumeric.md)
128
+ - [Faker::Ancient](doc/default/ancient.md)
129
+ - [Faker::App](doc/default/app.md)
130
+ - [Faker::Appliance](doc/default/appliance.md)
131
+ - [Faker::Artist](doc/default/artist.md)
132
+ - [Faker::Avatar](doc/default/avatar.md)
133
+ - [Faker::Bank](doc/default/bank.md)
134
+ - [Faker::Barcode](doc/default/barcode.md)
135
+ - [Faker::Beer](doc/default/beer.md)
136
+ - [Faker::Blood](doc/default/blood.md)
137
+ - [Faker::Boolean](doc/default/boolean.md)
138
+ - [Faker::BossaNova](doc/default/bossa_nova.md)
139
+ - [Faker::Business](doc/default/business.md)
140
+ - [Faker::Camera](doc/default/camera.md)
141
+ - [Faker::Cannabis](doc/default/cannabis.md)
142
+ - [Faker::ChileRut](doc/default/chile_rut.md)
143
+ - [Faker::ChuckNorris](doc/default/chuck_norris.md)
144
+ - [Faker::Code](doc/default/code.md)
145
+ - [Faker::Coffee](doc/default/coffee.md)
146
+ - [Faker::Coin](doc/default/coin.md)
147
+ - [Faker::Color](doc/default/color.md)
148
+ - [Faker::Commerce](doc/default/commerce.md)
149
+ - [Faker::Company](doc/default/company.md)
150
+ - [Faker::Compass](doc/default/compass.md)
151
+ - [Faker::Computer](doc/default/computer.md)
152
+ - [Faker::Construction](doc/default/construction.md)
153
+ - [Faker::Cosmere](doc/default/cosmere.md)
154
+ - [Faker::Crypto](doc/default/crypto.md)
155
+ - [Faker::CryptoCoin](doc/default/crypto_coin.md)
156
+ - [Faker::Currency](doc/default/currency.md)
157
+ - [Faker::Date](doc/default/date.md)
158
+ - [Faker::DcComics](doc/default/dc_comics.md)
159
+ - [Faker::Demographic](doc/default/demographic.md)
160
+ - [Faker::Dessert](doc/default/dessert.md)
161
+ - [Faker::Device](doc/default/device.md)
162
+ - [Faker::DrivingLicence](doc/default/driving_licence.md)
163
+ - [Faker::Drone](doc/drone/drone.md)
164
+ - [Faker::Educator](doc/default/educator.md)
165
+ - [Faker::ElectricalComponents](doc/default/electrical_components.md)
166
+ - [Faker::Emotion](doc/default/emotion.md)
167
+ - [Faker::Esport](doc/default/esport.md)
168
+ - [Faker::File](doc/default/file.md)
169
+ - [Faker::Fillmurray](doc/default/fillmurray.md)
170
+ - [Faker::Finance](doc/default/finance.md)
171
+ - [Faker::Food](doc/default/food.md)
172
+ - [Faker::FunnyName](doc/default/funny_name.md)
173
+ - [Faker::Gender](doc/default/gender.md)
174
+ - [Faker::GreekPhilosophers](doc/default/greek_philosophers.md)
175
+ - [Faker::Hacker](doc/default/hacker.md)
176
+ - [Faker::Hipster](doc/default/hipster.md)
177
+ - [Faker::Hobby](doc/default/hobby.md)
178
+ - [Faker::House](doc/default/house.md)
179
+ - [Faker::IDNumber](doc/default/id_number.md)
180
+ - [Faker::IndustrySegments](doc/default/industry_segments.md)
181
+ - [Faker::Internet](doc/default/internet.md)
182
+ - [Faker::Invoice](doc/default/invoice.md)
183
+ - [Faker::Job](doc/default/job.md)
184
+ - [Faker::Json](doc/default/json.md)
185
+ - [Faker::Kpop](doc/default/kpop.md)
186
+ - [Faker::Lorem](doc/default/lorem.md)
187
+ - [Faker::LoremFlickr](doc/default/lorem_flickr.md)
188
+ - [Faker::LoremPixel](doc/default/lorem_pixel.md)
189
+ - [Faker::Markdown](doc/default/markdown.md)
190
+ - [Faker::Marketing](doc/default/marketing.md)
191
+ - [Faker::Measurement](doc/default/measurement.md)
192
+ - [Faker::Military](doc/default/military.md)
193
+ - [Faker::Mountain](doc/default/mountain.md)
194
+ - [Faker::Name](doc/default/name.md)
195
+ - [Faker::Nation](doc/default/nation.md)
196
+ - [Faker::NatoPhoneticAlphabet](doc/default/nato_phonetic_alphabet.md)
197
+ - [Faker::NationalHealthService](doc/default/national_health_service.md)
198
+ - [Faker::Number](doc/default/number.md)
199
+ - [Faker::Omniauth](doc/default/omniauth.md)
200
+ - [Faker::PhoneNumber](doc/default/phone_number.md)
201
+ - [Faker::Placeholdit](doc/default/placeholdit.md)
202
+ - [Faker::ProgrammingLanguage](doc/default/programming_language.md)
203
+ - [Faker::Relationship](doc/default/relationship.md)
204
+ - [Faker::Restaurant](doc/default/restaurant.md)
205
+ - [Faker::Science](doc/default/science.md)
206
+ - [Faker::SlackEmoji](doc/default/slack_emoji.md)
207
+ - [Faker::Source](doc/default/source.md)
208
+ - [Faker::SouthAfrica](doc/default/south_africa.md)
209
+ - [Faker::Space](doc/default/space.md)
210
+ - [Faker::String](doc/default/string.md)
211
+ - [Faker::Stripe](doc/default/stripe.md)
212
+ - [Faker::Subscription](doc/default/subscription.md)
213
+ - [Faker::Superhero](doc/default/superhero.md)
214
+ - [Faker::Tea](doc/default/tea.md)
215
+ - [Faker::Team](doc/default/team.md)
216
+ - [Faker::Time](doc/default/time.md)
217
+ - [Faker::Twitter](doc/default/twitter.md)
218
+ - [Faker::Types](doc/default/types.md)
219
+ - [Faker::University](doc/default/university.md)
220
+ - [Faker::Vehicle](doc/default/vehicle.md)
221
+ - [Faker::Verbs](doc/default/verbs.md)
222
+ - [Faker::VulnerabilityIdentifier](doc/default/vulnerability_identifier.md)
223
+ - [Faker::WorldCup](doc/default/world_cup.md)
224
+
225
+ ### Blockchain
226
+ - [Faker::Blockchain::Aeternity](doc/blockchain/aeternity.md)
227
+ - [Faker::Blockchain::Bitcoin](doc/blockchain/bitcoin.md)
228
+ - [Faker::Blockchain::Ethereum](doc/blockchain/ethereum.md)
229
+ - [Faker::Blockchain::Tezos](doc/blockchain/tezos.md)
230
+
231
+ ### Books
232
+ - [Faker::Book](doc/books/book.md)
233
+ - [Faker::Books::CultureSeries](doc/books/culture_series.md)
234
+ - [Faker::Books::Dune](doc/books/dune.md)
235
+ - [Faker::Books::Lovecraft](doc/books/lovecraft.md)
236
+ - [Faker::Books::TheKingkillerChronicle](doc/books/the_kingkiller_chronicle.md)
237
+
238
+ ### Fantasy
239
+ - [Faker::Fantasy::Tolkien](doc/fantasy/tolkien.md)
240
+
241
+ ### Creature
242
+ - [Faker::Creature::Animal](doc/creature/animal.md)
243
+ - [Faker::Creature::Bird](doc/creature/bird.md)
244
+ - [Faker::Creature::Cat](doc/creature/cat.md)
245
+ - [Faker::Creature::Dog](doc/creature/dog.md)
246
+ - [Faker::Creature::Horse](doc/creature/horse.md)
247
+
248
+ ### Games
249
+ - [Faker::Game](doc/games/game.md)
250
+ - [Faker::Games::ClashOfClans](doc/games/clash_of_clans.md)
251
+ - [Faker::Games::DnD](doc/games/dnd.md)
252
+ - [Faker::Games::Dota](doc/games/dota.md)
253
+ - [Faker::Games::ElderScrolls](doc/games/elder_scrolls.md)
254
+ - [Faker::Games::Fallout](doc/games/fallout.md)
255
+ - [Faker::Games::HalfLife](doc/games/half_life.md)
256
+ - [Faker::Games::Heroes](doc/games/heroes.md)
257
+ - [Faker::Games::HeroesOfTheStorm](doc/games/heroes_of_the_storm.md)
258
+ - [Faker::Games::LeagueOfLegends](doc/games/league_of_legends.md)
259
+ - [Faker::Games::Minecraft](doc/games/minecraft.md)
260
+ - [Faker::Games::Myst](doc/games/myst.md)
261
+ - [Faker::Games::Overwatch](doc/games/overwatch.md)
262
+ - [Faker::Games::Pokemon](doc/games/pokemon.md)
263
+ - [Faker::Games::SonicTheHedgehog](doc/games/sonic_the_hedgehog.md)
264
+ - [Faker::Games::StreetFighter](doc/games/street_fighter.md)
265
+ - [Faker::Games::SuperMario](doc/games/super_mario.md)
266
+ - [Faker::Games::SuperSmashBros](doc/games/super_smash_bros.md)
267
+ - [Faker::Games::Touhou](doc/games/touhou.md)
268
+ - [Faker::Games::WarhammerFantasy](doc/games/warhammer_fantasy.md)
269
+ - [Faker::Games::Witcher](doc/games/witcher.md)
270
+ - [Faker::Games::WorldOfWarcraft](doc/games/world_of_warcraft.md)
271
+ - [Faker::Games::Zelda](doc/games/zelda.md)
272
+
273
+ ### Japanese Media
274
+ - [Faker::JapaneseMedia::DragonBall](doc/japanese_media/dragon_ball.md)
275
+ - [Faker::JapaneseMedia::OnePiece](doc/japanese_media/one_piece.md)
276
+ - [Faker::JapaneseMedia::StudioGhibli](doc/japanese_media/studio_ghibli.md)
277
+ - [Faker::JapaneseMedia::SwordArtOnline](doc/japanese_media/sword_art_online.md)
278
+ - [Faker::JapaneseMedia::Naruto](doc/japanese_media/naruto.md)
279
+ - [Faker::JapaneseMedia::Doraemon](doc/japanese_media/doraemon.md)
280
+ - [Faker::JapaneseMedia::Conan](doc/japanese_media/conan.md)
281
+ - [Faker::JapaneseMedia::FmaBrotherhood](doc/japanese_media/fullmetal_alchemist_brotherhood.md)
282
+
283
+ ### Movies
284
+ - [Faker::Movie](doc/movies/movie.md)
285
+ - [Faker::Movies::BackToTheFuture](doc/movies/back_to_the_future.md)
286
+ - [Faker::Movies::Departed](doc/movies/departed.md)
287
+ - [Faker::Movies::Ghostbusters](doc/movies/ghostbusters.md)
288
+ - [Faker::Movies::HarryPotter](doc/movies/harry_potter.md)
289
+ - [Faker::Movies::HitchhikersGuideToTheGalaxy](doc/movies/hitchhikers_guide_to_the_galaxy.md)
290
+ - [Faker::Movies::Hobbit](doc/movies/hobbit.md)
291
+ - [Faker::Movies::HowToTrainYourDragon](doc/movies/how_to_train_your_dragon.md)
292
+ - [Faker::Movies::Lebowski](doc/movies/lebowski.md)
293
+ - [Faker::Movies::LordOfTheRings](doc/movies/lord_of_the_rings.md)
294
+ - [Faker::Movies::PrincessBride](doc/movies/princess_bride.md)
295
+ - [Faker::Movies::StarWars](doc/movies/star_wars.md)
296
+ - [Faker::Movies::TRON](doc/movies/tron.md)
297
+ - [Faker::Movies::VForVendetta](doc/movies/v_for_vendetta.md)
298
+
299
+ ### Music
300
+ - [Faker::Music](doc/music/music.md)
301
+ - [Faker::Music::GratefulDead](doc/music/grateful_dead.md)
302
+ - [Faker::Music::Hiphop](doc/music/hiphop.md)
303
+ - [Faker::Music::Opera](doc/music/opera.md)
304
+ - [Faker::Music::PearlJam](doc/music/pearl_jam.md)
305
+ - [Faker::Music::Phish](doc/music/phish.md)
306
+ - [Faker::Music::Prince](doc/music/prince.md)
307
+ - [Faker::Music::RockBand](doc/music/rock_band.md)
308
+ - [Faker::Music::Rush](doc/music/rush.md)
309
+ - [Faker::Music::UmphreysMcgee](doc/music/umphreys_mcgee.md)
310
+
311
+ ### Quotes
312
+ - [Faker::Quote](doc/quotes/quote.md)
313
+ - [Faker::Quotes::Chiquito](doc/quotes/chiquito.md)
314
+ - [Faker::Quotes::Rajnikanth](doc/quotes/rajnikanth.md)
315
+ - [Faker::Quotes::Shakespeare](doc/quotes/shakespeare.md)
316
+
317
+
318
+ ### Sports
319
+ - [Faker::Sports](doc/sports/sports.md)
320
+ - [Faker::Sports::Basketball](doc/sports/basketball.md)
321
+ - [Faker::Sports::Football](doc/sports/football.md)
322
+ - [Faker::Sports::Mountaineering](doc/sports/mountaineering.md)
323
+ - [Faker::Sports::Volleyball](doc/sports/volleyball.md)
324
+
325
+ ### Tv Shows
326
+ - [Faker::TvShows::AquaTeenHungerForce](doc/tv_shows/aqua_teen_hunger_force.md)
327
+ - [Faker::TvShows::BigBangTheory](doc/tv_shows/big_bang_theory.md)
328
+ - [Faker::TvShows::BojackHorseman](doc/tv_shows/bojack_horseman.md)
329
+ - [Faker::TvShows::BreakingBad](doc/tv_shows/breaking_bad.md)
330
+ - [Faker::TvShows::BrooklynNineNine](doc/tv_shows/brooklyn_nine_nine.md)
331
+ - [Faker::TvShows::Buffy](doc/tv_shows/buffy.md)
332
+ - [Faker::TvShows::Community](doc/tv_shows/community.md)
333
+ - [Faker::TvShows::DrWho](doc/tv_shows/dr_who.md)
334
+ - [Faker::TvShows::DumbAndDumber](doc/tv_shows/dumb_and_dumber.md)
335
+ - [Faker::TvShows::FamilyGuy](doc/tv_shows/family_guy.md)
336
+ - [Faker::TvShows::FinalSpace](doc/tv_shows/final_space.md)
337
+ - [Faker::TvShows::Friends](doc/tv_shows/friends.md)
338
+ - [Faker::TvShows::GameOfThrones](doc/tv_shows/game_of_thrones.md)
339
+ - [Faker::TvShows::HeyArnold](doc/tv_shows/hey_arnold.md)
340
+ - [Faker::TvShows::HowIMetYourMother](doc/tv_shows/how_i_met_your_mother.md)
341
+ - [Faker::TvShows::MichaelScott](doc/tv_shows/michael_scott.md)
342
+ - [Faker::TvShows::NewGirl](doc/tv_shows/new_girl.md)
343
+ - [Faker::TvShows::ParksAndRec](doc/tv_shows/parks_and_rec.md)
344
+ - [Faker::TvShows::RickAndMorty](doc/tv_shows/rick_and_morty.md)
345
+ - [Faker::TvShows::RuPaul](doc/tv_shows/rupaul.md)
346
+ - [Faker::TvShows::Seinfeld](doc/tv_shows/seinfeld.md)
347
+ - [Faker::TvShows::SiliconValley](doc/tv_shows/silicon_valley.md)
348
+ - [Faker::TvShows::Simpsons](doc/tv_shows/simpsons.md)
349
+ - [Faker::TvShows::SouthPark](doc/tv_shows/south_park.md)
350
+ - [Faker::TvShows::StarTrek](doc/tv_shows/star_trek.md)
351
+ - [Faker::TvShows::Stargate](doc/tv_shows/stargate.md)
352
+ - [Faker::TvShows::StrangerThings](doc/tv_shows/stranger_things.md)
353
+ - [Faker::TvShows::Suits](doc/tv_shows/suits.md)
354
+ - [Faker::TvShows::Supernatural](doc/tv_shows/supernatural.md)
355
+ - [Faker::TvShows::TheExpanse](doc/tv_shows/the_expanse.md)
356
+ - [Faker::TvShows::TheFreshPrinceOfBelAir](doc/tv_shows/the_fresh_prince_of_bel_air.md)
357
+ - [Faker::TvShows::TheITCrowd](doc/tv_shows/the_it_crowd.md)
358
+ - [Faker::TvShows::TheThickOfIt](doc/tv_shows/the_thick_of_it.md)
359
+ - [Faker::TvShows::TwinPeaks](doc/tv_shows/twin_peaks.md)
360
+ - [Faker::TvShows::VentureBros](doc/tv_shows/venture_bros.md)
361
+
181
362
  ## Customization
363
+ You may want Faker to print information depending on your location in the world.
364
+ To assist you in this, Faker uses I18n gem to store strings and formats to
365
+ represent the names and postal codes of the area of your choosing.
366
+ Just set the locale you want as shown below, and Faker will take care of the rest.
182
367
 
183
- Since you may want to make addresses and other types of data look different
184
- depending on where in the world you are (US postal codes vs. UK postal codes,
185
- for example), Faker uses the I18n gem to store strings (like state names) and
186
- formats (US postal codes are NNNNN while UK postal codes are AAN NAA),
187
- allowing you to get different formats by switching locales. Just set
188
- Faker::Config.locale to the locale you want, and Faker will take care of the
189
- rest.
368
+ ```ruby
369
+ Faker::Config.locale = 'es'
370
+ # or
371
+ Faker::Config.locale = :es
372
+ ```
190
373
 
191
- If your locale doesn't already exist, create it in the \lib\locales\ directory
374
+ If your locale doesn't already exist, create it in the `lib/locales` directory
192
375
  and you can then override or add elements to suit your needs. See more about how to
193
376
  use locales [here](lib/locales/README.md)
194
377
 
195
378
  ```yaml
196
-
197
379
  en-au-ocker:
198
380
  faker:
199
381
  name:
200
382
  # Existing faker field, new data
201
- first_name: [Charlotte, Ava, Chloe, Emily]
383
+ first_name:
384
+ - Charlotte
385
+ - Ava
386
+ - Chloe
387
+ - Emily
202
388
 
203
389
  # New faker fields
204
- ocker_first_name: [Bazza, Bluey, Davo, Johno, Shano, Shazza]
205
- region: [South East Queensland, Wide Bay Burnett, Margaret River, Port Pirie, Gippsland, Elizabeth, Barossa]
206
-
390
+ ocker_first_name:
391
+ - Bazza
392
+ - Bluey
393
+ - Davo
394
+ - Johno
395
+ - Shano
396
+ - Shazza
397
+ region:
398
+ - South East Queensland
399
+ - Wide Bay Burnett
400
+ - Margaret River
401
+ - Port Pirie
402
+ - Gippsland
403
+ - Elizabeth
404
+ - Barossa
207
405
  ```
208
406
 
209
407
  ## Contributing
210
-
211
- See [CONTRIBUTING.md](https://github.com/stympy/faker/blob/master/CONTRIBUTING.md).
408
+ See [CONTRIBUTING.md](https://github.com/stympy/faker/blob/main/CONTRIBUTING.md).
212
409
 
213
410
  ## Contact
214
-
215
411
  Comments and feedback are welcome. Send an email to Benjamin Curtis via the [google group](http://groups.google.com/group/ruby-faker).
216
412
 
217
- ## License
413
+ You can also join our [discord channel](https://discord.gg/RMumTwB) to discuss anything regarding improvements or feature requests.
218
414
 
415
+ ## License
219
416
  This code is free to use under the terms of the MIT license.
data/bin/faker ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ lib_path = File.expand_path('../lib', __dir__)
5
+ $LOAD_PATH.unshift(lib_path) unless $LOAD_PATH.include?(lib_path)
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Blockchain
5
+ class Aeternity < Base
6
+ class << self
7
+ ##
8
+ # Produces a random Aeternity wallet address
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Blockchain::Aeternity.address
14
+ # #=> "ak_zvU8YQLagjcfng7Tg8yCdiZ1rpiWNp1PBn3vtUs44utSvbJVR"
15
+ #
16
+ def address
17
+ "ak_#{rand_strings}"
18
+ end
19
+
20
+ ##
21
+ # Produces a random Aeternity transaction
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Blockchain::Aeternity.transaction
27
+ # #=> "th_147nDP22h3pHrLt2qykTH4txUwQh1ccaXp"
28
+ #
29
+ def transaction
30
+ "th_#{rand_strings(51)}"
31
+ end
32
+
33
+ ##
34
+ # Produces a random Aeternity contract
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Blockchain::Aeternity.contract
40
+ # #=> "ct_Hk2JsNeWGEYQEHHQCfcBeGrwbhtYSwFTPdDhW2SvjFYVojyhW"
41
+ #
42
+ def contract
43
+ "ct_#{rand_strings}"
44
+ end
45
+
46
+ ##
47
+ # Produces a random Aeternity oracle
48
+ #
49
+ # @return [String]
50
+ #
51
+ # @example
52
+ # Faker::Blockchain::Aeternity.oracle
53
+ # #=> "ok_28QDg7fkF5qiKueSdUvUBtCYPJdmMEoS73CztzXCRAwMGKHKZh"
54
+ #
55
+ def oracle
56
+ "ok_#{rand_strings(51)}"
57
+ end
58
+
59
+ protected
60
+
61
+ def rand_strings(length = 50)
62
+ hex_alphabet = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
63
+ var = +''
64
+ length.times { var << sample(shuffle(hex_alphabet.chars)) }
65
+ var
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end