faker 1.8.6 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
@@ -1,29 +0,0 @@
1
- module Faker
2
- class LeagueOfLegends < Base
3
- class << self
4
- def champion
5
- fetch('league_of_legends.champion')
6
- end
7
-
8
- def location
9
- fetch('league_of_legends.location')
10
- end
11
-
12
- def quote
13
- fetch('league_of_legends.quote')
14
- end
15
-
16
- def summoner_spell
17
- fetch('league_of_legends.summoner_spell')
18
- end
19
-
20
- def masteries
21
- fetch('league_of_legends.masteries')
22
- end
23
-
24
- def rank
25
- fetch('league_of_legends.rank')
26
- end
27
- end
28
- end
29
- end
@@ -1,17 +0,0 @@
1
- module Faker
2
- class Lebowski < Base
3
- class << self
4
- def actor
5
- fetch('lebowski.actors')
6
- end
7
-
8
- def character
9
- fetch('lebowski.characters')
10
- end
11
-
12
- def quote
13
- fetch('lebowski.quotes')
14
- end
15
- end
16
- end
17
- end
@@ -1,13 +0,0 @@
1
- module Faker
2
- class LordOfTheRings < Base
3
- class << self
4
- def character
5
- fetch('lord_of_the_rings.characters')
6
- end
7
-
8
- def location
9
- fetch('lord_of_the_rings.locations')
10
- end
11
- end
12
- end
13
- end
data/lib/faker/lorem.rb DELETED
@@ -1,68 +0,0 @@
1
- module Faker
2
- # Based on Perl's Text::Lorem
3
- class Lorem < Base
4
- CHARACTERS = ('0'..'9').to_a + ('a'..'z').to_a
5
-
6
- class << self
7
- def word
8
- sample(translate('faker.lorem.words'))
9
- end
10
-
11
- def words(num = 3, supplemental = false)
12
- resolved_num = resolve(num)
13
- word_list = (
14
- translate('faker.lorem.words') +
15
- (supplemental ? translate('faker.lorem.supplemental') : [])
16
- )
17
- word_list = word_list * ((resolved_num / word_list.length) + 1)
18
- shuffle(word_list)[0, resolved_num]
19
- end
20
-
21
- def character
22
- sample(CHARACTERS)
23
- end
24
-
25
- def characters(char_count = 255)
26
- char_count = resolve(char_count)
27
- return '' if char_count.to_i < 1
28
- Array.new(char_count) { sample(CHARACTERS) }.join
29
- end
30
-
31
- def sentence(word_count = 4, supplemental = false, random_words_to_add = 6)
32
- words(word_count + rand(random_words_to_add.to_i), supplemental).join(' ').capitalize + '.'
33
- end
34
-
35
- def sentences(sentence_count = 3, supplemental = false)
36
- 1.upto(resolve(sentence_count)).collect { sentence(3, supplemental) }
37
- end
38
-
39
- def paragraph(sentence_count = 3, supplemental = false, random_sentences_to_add = 3)
40
- sentences(resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental).join(' ')
41
- end
42
-
43
- def paragraphs(paragraph_count = 3, supplemental = false)
44
- 1.upto(resolve(paragraph_count)).collect { paragraph(3, supplemental) }
45
- end
46
-
47
- def question(word_count = 4, supplemental = false, random_words_to_add = 6)
48
- words(word_count + rand(random_words_to_add.to_i), supplemental).join(' ').capitalize + '?'
49
- end
50
-
51
- def questions(question_count = 3, supplemental = false)
52
- 1.upto(resolve(question_count)).collect { question(3, supplemental) }
53
- end
54
-
55
- private
56
-
57
- # If an array or range is passed, a random value will be selected.
58
- # All other values are simply returned.
59
- def resolve(value)
60
- case value
61
- when Array then sample(value)
62
- when Range then rand value
63
- else value
64
- end
65
- end
66
- end
67
- end
68
- end
@@ -1,21 +0,0 @@
1
- module Faker
2
- class LoremPixel < Base
3
- class << self
4
- SUPPORTED_CATEGORIES = %w(abstract animals business cats city food nightlife fashion people nature sports technics transport)
5
-
6
- def image(size = '300x300', is_gray = false, category = nil, number = nil, text = nil)
7
- raise ArgumentError, 'Size should be specified in format 300x300' unless size.match(/^[0-9]+x[0-9]+$/)
8
- raise ArgumentError, "Supported categories are #{SUPPORTED_CATEGORIES.join(', ')}" unless category.nil? || SUPPORTED_CATEGORIES.include?(category)
9
- raise ArgumentError, 'Category required when number is passed' if !number.nil? && category.nil?
10
- raise ArgumentError, 'Number must be between 1 and 10' unless number.nil? || (1..10).include?(number)
11
- raise ArgumentError, 'Category and number must be passed when text is passed' if !text.nil? && number.nil? && category.nil?
12
-
13
- url_parts = ['http://lorempixel.com']
14
- url_parts << 'g' if is_gray
15
- url_parts += size.split('x')
16
- url_parts += [category, number, text].compact
17
- url_parts.join('/')
18
- end
19
- end
20
- end
21
- end
@@ -1,73 +0,0 @@
1
- module Faker
2
- class Lovecraft < Base
3
- class << self
4
- def location
5
- fetch('lovecraft.location')
6
- end
7
-
8
- def fhtagn(number_of = 1)
9
- number_of.times.collect { fetch('lovecraft.fhtagn') }.join(". ")
10
- end
11
-
12
- def deity
13
- fetch('lovecraft.deity')
14
- end
15
-
16
- def tome
17
- fetch('lovecraft.tome')
18
- end
19
-
20
- def sentence(word_count = 4, random_words_to_add = 6)
21
- words(word_count + rand(random_words_to_add.to_i).to_i, true).join(' ').capitalize + '.'
22
- end
23
-
24
- def word
25
- random_word = sample(translate('faker.lovecraft.words'))
26
- random_word.match(/\s/) ? word : random_word
27
- end
28
-
29
- def words(num = 3, spaces_allowed = false)
30
- resolved_num = resolve(num)
31
- word_list = translate('faker.lovecraft.words')
32
- word_list = word_list * ((resolved_num / word_list.length) + 1)
33
-
34
- return shuffle(word_list)[0, resolved_num] if spaces_allowed
35
- words = shuffle(word_list)[0, resolved_num]
36
- words.each_with_index { |w, i| words[i] = word if w.match(/\s/) }
37
- end
38
-
39
-
40
- def sentences(sentence_count = 3)
41
- [].tap do |sentences|
42
- 1.upto(resolve(sentence_count)) do
43
- sentences << sentence(3)
44
- end
45
- end
46
- end
47
-
48
- def paragraph(sentence_count = 3, random_sentences_to_add = 3)
49
- sentences(resolve(sentence_count) + rand(random_sentences_to_add.to_i).to_i).join(' ')
50
- end
51
-
52
- def paragraphs(paragraph_count = 3)
53
- [].tap do |paragraphs|
54
- 1.upto(resolve(paragraph_count)) do
55
- paragraphs << paragraph(3)
56
- end
57
- end
58
- end
59
-
60
- private
61
-
62
- # If an array or range is passed, a random value will be selected.
63
- # All other values are simply returned.
64
- def resolve(value)
65
- case value
66
- when Array then sample(value)
67
- when Range then rand value
68
- else value
69
- end
70
- end
71
- end
72
- end
73
- end
@@ -1,67 +0,0 @@
1
- module Faker
2
- class Markdown < Base
3
- class << self
4
-
5
- def headers
6
- "#{fetch('markdown.headers')} #{Lorem.word.capitalize}"
7
- end
8
-
9
- def emphasis
10
- paragraph = Faker::Lorem.paragraph(3)
11
- words = paragraph.split(' ')
12
- position = rand(0..words.length - 1)
13
- formatting = fetch('markdown.emphasis')
14
- words[position] = "#{formatting}#{words[position]}#{formatting}"
15
- words.join(' ')
16
- end
17
-
18
- def ordered_list
19
- number = rand(1..10)
20
-
21
- result = []
22
- number.times do |i|
23
- result << "#{i.to_s}. #{Faker::Lorem.sentence(1)} \n"
24
- end
25
- result.join('')
26
- end
27
-
28
- def unordered_list
29
- number = rand(1..10)
30
-
31
- result = []
32
- number.times do |i|
33
- result << "* #{Faker::Lorem.sentence(1)} \n"
34
- end
35
- result.join('')
36
- end
37
-
38
- def inline_code
39
- "`#{Faker::Lorem.sentence(1)}`"
40
- end
41
-
42
- def block_code
43
- "```ruby\n#{Lorem.sentence(1)}\n```"
44
- end
45
-
46
- def table
47
- table = []
48
- 3.times do
49
- table << "#{Lorem.word} | #{Lorem.word} | #{Lorem.word}"
50
- end
51
- table.insert(1, '---- | ---- | ----')
52
- table.join("\n")
53
- end
54
-
55
- def random
56
- send(available_methods[rand(0..available_methods.length - 1)])
57
- end
58
-
59
- private
60
-
61
- def available_methods
62
- Markdown.public_methods(false) - Base.methods
63
- end
64
-
65
- end
66
- end
67
- end
data/lib/faker/matz.rb DELETED
@@ -1,9 +0,0 @@
1
- module Faker
2
- class Matz < Base
3
- class << self
4
- def quote
5
- fetch('matz.quotes')
6
- end
7
- end
8
- end
9
- end
@@ -1,127 +0,0 @@
1
- module Faker
2
- class Measurement < Base
3
- class << self
4
- ALL = "all"
5
- NONE = "none"
6
-
7
- def height(amount = rand(10))
8
- ensure_valid_amount(amount)
9
- if amount == ALL
10
- make_plural(fetch('measurement.height'))
11
- elsif amount == NONE
12
- fetch('measurement.height')
13
- else
14
- "#{amount.to_s} #{check_for_plural(fetch('measurement.height'), amount)}"
15
- end
16
- end
17
-
18
- def length(amount = rand(10))
19
- ensure_valid_amount(amount)
20
- if amount == ALL
21
- make_plural(fetch('measurement.length'))
22
- elsif amount == NONE
23
- fetch('measurement.length')
24
- else
25
- "#{amount.to_s} #{check_for_plural(fetch('measurement.length'), amount)}"
26
- end
27
- end
28
-
29
- def volume(amount = rand(10))
30
- ensure_valid_amount(amount)
31
- if amount == ALL
32
- make_plural(fetch('measurement.volume'))
33
- elsif amount == NONE
34
- fetch('measurement.volume')
35
- else
36
- "#{amount.to_s} #{check_for_plural(fetch('measurement.volume'), amount)}"
37
- end
38
- end
39
-
40
- def weight(amount = rand(10))
41
- ensure_valid_amount(amount)
42
- if amount == ALL
43
- make_plural(fetch('measurement.weight'))
44
- elsif amount == NONE
45
- fetch('measurement.weight')
46
- else
47
- "#{amount.to_s} #{check_for_plural(fetch('measurement.weight'), amount)}"
48
- end
49
- end
50
-
51
- def metric_height(amount = rand(10))
52
- ensure_valid_amount(amount)
53
- if amount == ALL
54
- make_plural(fetch('measurement.height'))
55
- elsif amount == NONE
56
- fetch('measurement.height')
57
- else
58
- "#{amount.to_s} #{check_for_plural(fetch('measurement.height'), amount)}"
59
- end
60
- end
61
-
62
- def metric_length(amount = rand(10))
63
- ensure_valid_amount(amount)
64
- if amount == ALL
65
- make_plural(fetch('measurement.length'))
66
- elsif amount == NONE
67
- fetch('measurement.length')
68
- else
69
- "#{amount.to_s} #{check_for_plural(fetch('measurement.length'), amount)}"
70
- end
71
- end
72
-
73
- def metric_volume(amount = rand(10))
74
- ensure_valid_amount(amount)
75
- if amount == ALL
76
- make_plural(fetch('measurement.volume'))
77
- elsif amount == NONE
78
- fetch('measurement.volume')
79
- else
80
- "#{amount.to_s} #{check_for_plural(fetch('measurement.volume'), amount)}"
81
- end
82
- end
83
-
84
- def metric_weight(amount = rand(10))
85
- ensure_valid_amount(amount)
86
- if amount == ALL
87
- make_plural(fetch('measurement.weight'))
88
- elsif amount == NONE
89
- fetch('measurement.weight')
90
- else
91
- "#{amount.to_s} #{check_for_plural(fetch('measurement.weight'), amount)}"
92
- end
93
- end
94
-
95
- private
96
-
97
- def ensure_valid_amount(amount)
98
- unless amount == NONE || amount == ALL || amount.is_a?(Integer) || amount.is_a?(Float)
99
- raise ArgumentError, 'invalid amount'
100
- end
101
- end
102
-
103
- def check_for_plural(text, number)
104
- if number && number != 1
105
- make_plural(text)
106
- else
107
- text
108
- end
109
- end
110
-
111
- def make_plural(text)
112
- case text
113
- when "foot"
114
- "feet"
115
- when "inch"
116
- "inches"
117
- when "fluid ounce"
118
- "fluid ounces"
119
- when "metric ton"
120
- "metric tons"
121
- else
122
- "#{text}s"
123
- end
124
- end
125
- end
126
- end
127
- end
@@ -1,9 +0,0 @@
1
- module Faker
2
- class MostInterestingManInTheWorld < Base
3
- class << self
4
- def quote
5
- fetch('most_interesting_man_in_the_world.quotes')
6
- end
7
- end
8
- end
9
- end
data/lib/faker/movie.rb DELETED
@@ -1,9 +0,0 @@
1
- module Faker
2
- class Movie < Base
3
- class << self
4
- def quote
5
- fetch('movie.quote')
6
- end
7
- end
8
- end
9
- end
data/lib/faker/music.rb DELETED
@@ -1,33 +0,0 @@
1
- module Faker
2
- class Music < Base
3
- class << self
4
- def key
5
- sample(keys) + sample(key_variants)
6
- end
7
-
8
- def chord
9
- key + sample(chord_types)
10
- end
11
-
12
- def instrument
13
- fetch('music.instruments')
14
- end
15
-
16
- def keys
17
- ['C', 'D', 'E', 'F', 'G', 'A', 'B']
18
- end
19
-
20
- def key_variants
21
- ['b', '#', '']
22
- end
23
-
24
- def key_types
25
- ['', 'm']
26
- end
27
-
28
- def chord_types
29
- ['', 'maj', '6', 'maj7', 'm', 'm7', '-7', '7', 'dom7', 'dim', 'dim7', 'm7b5']
30
- end
31
- end
32
- end
33
- end
data/lib/faker/name.rb DELETED
@@ -1,46 +0,0 @@
1
- module Faker
2
- class Name < Base
3
- flexible :name
4
-
5
- class << self
6
-
7
- def name
8
- parse('name.name')
9
- end
10
-
11
- def name_with_middle
12
- parse('name.name_with_middle')
13
- end
14
-
15
- def first_name
16
- fetch('name.first_name')
17
- end
18
-
19
- def last_name
20
- fetch('name.last_name')
21
- end
22
-
23
- def prefix
24
- fetch('name.prefix')
25
- end
26
-
27
- def suffix
28
- fetch('name.suffix')
29
- end
30
-
31
- # Generate a buzzword-laden job title
32
- # Wordlist from http://www.bullshitjob.com/title/
33
- def title
34
- "#{fetch('name.title.descriptor')} #{fetch('name.title.level')} #{fetch('name.title.job')}"
35
- end
36
-
37
- def initials(character_count=3)
38
- (0...character_count).map { (65 + rand(26)).chr }.join
39
- end
40
-
41
- def job_titles
42
- fetch_all('name.title.job')
43
- end
44
- end
45
- end
46
- end
data/lib/faker/number.rb DELETED
@@ -1,86 +0,0 @@
1
- module Faker
2
- class Number < Base
3
- class << self
4
- def number(digits=10)
5
- num = ''
6
- if digits > 1
7
- num = non_zero_digit
8
- digits -= 1
9
- end
10
- num + leading_zero_number(digits)
11
- end
12
-
13
- def leading_zero_number(digits=10)
14
- (1..digits).collect {digit}.join
15
- end
16
-
17
- def decimal_part(digits=10)
18
- num = ''
19
- if digits > 1
20
- num = non_zero_digit
21
- digits -= 1
22
- end
23
- leading_zero_number(digits) + num
24
- end
25
-
26
- def decimal(l_digits=5, r_digits=2)
27
- l_d = self.number(l_digits)
28
- r_d = self.decimal_part(r_digits)
29
- "#{l_d}.#{r_d}"
30
- end
31
-
32
- def non_zero_digit
33
- (rand(9) + 1).to_s
34
- end
35
-
36
- def digit
37
- rand(10).to_s
38
- end
39
-
40
- def hexadecimal(digits=6)
41
- hex = ""
42
- digits.times { hex += rand(15).to_s(16) }
43
- hex
44
- end
45
-
46
- def normal(mean=1, standard_deviation=1)
47
- theta = 2 * Math::PI * rand
48
- rho = Math.sqrt(-2 * Math.log(1 - rand))
49
- scale = standard_deviation * rho
50
- mean + scale * Math.cos(theta)
51
- end
52
-
53
- def between(from = 1.00, to = 5000.00)
54
- Faker::Base::rand_in_range(from, to)
55
- end
56
-
57
- def positive(from = 1.00, to = 5000.00)
58
- random_number = between(from, to)
59
- greater_than_zero(random_number)
60
- end
61
-
62
- def negative(from = -5000.00, to = -1.00)
63
- random_number = between(from, to)
64
- less_than_zero(random_number)
65
- end
66
-
67
- private
68
-
69
- def greater_than_zero(number)
70
- should_be(number, :>)
71
- end
72
-
73
- def less_than_zero(number)
74
- should_be(number, :<)
75
- end
76
-
77
- def should_be(number, method_to_compare)
78
- if number.send(method_to_compare, 0)
79
- number
80
- else
81
- number * -1
82
- end
83
- end
84
- end
85
- end
86
- end