faker 2.11.0 → 3.4.2

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 (404) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1131 -19
  3. data/README.md +249 -105
  4. data/lib/faker/blockchain/aeternity.rb +5 -5
  5. data/lib/faker/blockchain/bitcoin.rb +2 -2
  6. data/lib/faker/blockchain/ethereum.rb +1 -1
  7. data/lib/faker/blockchain/tezos.rb +31 -3
  8. data/lib/faker/books/dune.rb +17 -12
  9. data/lib/faker/books/lovecraft.rb +16 -44
  10. data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
  11. data/lib/faker/creature/bird.rb +203 -0
  12. data/lib/faker/default/address.rb +42 -32
  13. data/lib/faker/default/adjective.rb +35 -0
  14. data/lib/faker/default/alphanumeric.rb +2 -8
  15. data/lib/faker/default/app.rb +1 -10
  16. data/lib/faker/default/avatar.rb +1 -12
  17. data/lib/faker/default/bank.rb +104 -19
  18. data/lib/faker/default/barcode.rb +165 -0
  19. data/lib/faker/default/beer.rb +3 -3
  20. data/lib/faker/default/blood.rb +48 -0
  21. data/lib/faker/default/boolean.rb +1 -4
  22. data/lib/faker/default/business.rb +1 -1
  23. data/lib/faker/default/camera.rb +46 -0
  24. data/lib/faker/default/cannabis.rb +10 -0
  25. data/lib/faker/default/chile_rut.rb +62 -18
  26. data/lib/faker/default/chuck_norris.rb +1 -0
  27. data/lib/faker/default/code.rb +162 -52
  28. data/lib/faker/default/color.rb +77 -6
  29. data/lib/faker/default/commerce.rb +105 -28
  30. data/lib/faker/default/company.rb +210 -28
  31. data/lib/faker/default/compass.rb +135 -0
  32. data/lib/faker/default/computer.rb +63 -0
  33. data/lib/faker/default/construction.rb +54 -0
  34. data/lib/faker/default/cosmere.rb +90 -0
  35. data/lib/faker/default/crypto.rb +26 -4
  36. data/lib/faker/default/crypto_coin.rb +48 -15
  37. data/lib/faker/default/date.rb +81 -54
  38. data/lib/faker/default/demographic.rb +1 -5
  39. data/lib/faker/default/driving_licence.rb +85 -18
  40. data/lib/faker/default/drone.rb +332 -0
  41. data/lib/faker/default/educator.rb +13 -0
  42. data/lib/faker/default/emotion.rb +33 -0
  43. data/lib/faker/default/file.rb +53 -21
  44. data/lib/faker/default/finance.rb +75 -7
  45. data/lib/faker/default/food.rb +28 -2
  46. data/lib/faker/default/gender.rb +1 -1
  47. data/lib/faker/default/hipster.rb +108 -51
  48. data/lib/faker/default/hobby.rb +22 -0
  49. data/lib/faker/default/html.rb +230 -0
  50. data/lib/faker/default/id_number.rb +251 -17
  51. data/lib/faker/default/internet.rb +361 -113
  52. data/lib/faker/default/internet_http.rb +48 -0
  53. data/lib/faker/default/invoice.rb +37 -23
  54. data/lib/faker/default/json.rb +63 -25
  55. data/lib/faker/default/lorem.rb +177 -75
  56. data/lib/faker/default/lorem_flickr.rb +69 -37
  57. data/lib/faker/default/markdown.rb +97 -11
  58. data/lib/faker/default/marketing.rb +1 -1
  59. data/lib/faker/default/measurement.rb +101 -42
  60. data/lib/faker/default/military.rb +26 -0
  61. data/lib/faker/default/mountain.rb +33 -0
  62. data/lib/faker/default/name.rb +99 -5
  63. data/lib/faker/default/nation.rb +0 -3
  64. data/lib/faker/default/{nhs.rb → national_health_service.rb} +26 -6
  65. data/lib/faker/default/number.rb +39 -69
  66. data/lib/faker/default/omniauth.rb +115 -57
  67. data/lib/faker/default/phone_number.rb +112 -14
  68. data/lib/faker/default/placeholdit.rb +23 -12
  69. data/lib/faker/default/relationship.rb +2 -6
  70. data/lib/faker/default/religion.rb +6 -0
  71. data/lib/faker/default/science.rb +108 -0
  72. data/lib/faker/default/slack_emoji.rb +81 -0
  73. data/lib/faker/default/source.rb +3 -16
  74. data/lib/faker/default/south_africa.rb +93 -3
  75. data/lib/faker/default/space.rb +1 -1
  76. data/lib/faker/default/string.rb +18 -8
  77. data/lib/faker/default/stripe.rb +68 -23
  78. data/lib/faker/default/tea.rb +41 -0
  79. data/lib/faker/default/theater.rb +52 -0
  80. data/lib/faker/default/time.rb +4 -34
  81. data/lib/faker/default/twitter.rb +42 -23
  82. data/lib/faker/default/types.rb +92 -34
  83. data/lib/faker/default/university.rb +45 -0
  84. data/lib/faker/default/vehicle.rb +227 -57
  85. data/lib/faker/default/verb.rb +45 -0
  86. data/lib/faker/default/vulnerability_identifier.rb +23 -0
  87. data/lib/faker/default/world_cup.rb +6 -15
  88. data/lib/faker/fantasy/tolkien.rb +67 -0
  89. data/lib/faker/games/clash_of_clans.rb +48 -0
  90. data/lib/faker/games/control.rb +113 -0
  91. data/lib/faker/games/dnd.rb +178 -0
  92. data/lib/faker/games/dota.rb +14 -5
  93. data/lib/faker/games/elder_scrolls.rb +26 -0
  94. data/lib/faker/games/final_fantasy_xiv.rb +73 -0
  95. data/lib/faker/games/heroes.rb +13 -0
  96. data/lib/faker/games/heroes_of_the_storm.rb +16 -5
  97. data/lib/faker/games/minecraft.rb +113 -0
  98. data/lib/faker/games/myst.rb +1 -1
  99. data/lib/faker/games/street_fighter.rb +61 -0
  100. data/lib/faker/games/super_mario.rb +48 -0
  101. data/lib/faker/games/tarkov.rb +205 -0
  102. data/lib/faker/games/touhou.rb +75 -0
  103. data/lib/faker/games/warhammer_fantasy.rb +74 -0
  104. data/lib/faker/games/witcher.rb +39 -0
  105. data/lib/faker/games/world_of_warcraft.rb +26 -1
  106. data/lib/faker/japanese_media/conan.rb +48 -0
  107. data/lib/faker/japanese_media/cowboy_bebop.rb +61 -0
  108. data/lib/faker/japanese_media/doraemon.rb +48 -0
  109. data/lib/faker/japanese_media/dragon_ball.rb +26 -0
  110. data/lib/faker/japanese_media/fullmetal_alchemist_brotherhood.rb +51 -0
  111. data/lib/faker/japanese_media/kamen_rider.rb +102 -0
  112. data/lib/faker/japanese_media/naruto.rb +61 -0
  113. data/lib/faker/japanese_media/one_piece.rb +1 -1
  114. data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
  115. data/lib/faker/locations/australia.rb +52 -0
  116. data/lib/faker/movies/avatar.rb +49 -0
  117. data/lib/faker/movies/departed.rb +49 -0
  118. data/lib/faker/movies/hackers.rb +48 -0
  119. data/lib/faker/movies/hobbit.rb +4 -4
  120. data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
  121. data/lib/faker/movies/lord_of_the_rings.rb +3 -3
  122. data/lib/faker/movies/movie.rb +13 -0
  123. data/lib/faker/movies/star_wars.rb +75 -7
  124. data/lib/faker/movies/the_room.rb +63 -0
  125. data/lib/faker/movies/tron.rb +161 -0
  126. data/lib/faker/music/hiphop.rb +48 -0
  127. data/lib/faker/music/music.rb +12 -0
  128. data/lib/faker/music/opera.rb +237 -1
  129. data/lib/faker/music/pearl_jam.rb +50 -0
  130. data/lib/faker/music/phish.rb +27 -1
  131. data/lib/faker/music/prince.rb +64 -0
  132. data/lib/faker/music/rock_band.rb +12 -0
  133. data/lib/faker/music/rush.rb +37 -0
  134. data/lib/faker/music/smashing_pumpkins.rb +64 -0
  135. data/lib/faker/quotes/quote.rb +93 -1
  136. data/lib/faker/quotes/rajnikanth.rb +1 -0
  137. data/lib/faker/quotes/shakespeare.rb +70 -0
  138. data/lib/faker/religion/bible.rb +50 -0
  139. data/lib/faker/sports/chess.rb +90 -0
  140. data/lib/faker/sports/mountaineering.rb +22 -0
  141. data/lib/faker/sports/sport.rb +116 -0
  142. data/lib/faker/sports/volleyball.rb +74 -0
  143. data/lib/faker/travel/airport.rb +43 -0
  144. data/lib/faker/travel/train_station.rb +54 -0
  145. data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +13 -0
  146. data/lib/faker/tv_shows/archer.rb +51 -0
  147. data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
  148. data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
  149. data/lib/faker/tv_shows/buffy.rb +17 -4
  150. data/lib/faker/tv_shows/dr_who.rb +1 -1
  151. data/lib/faker/tv_shows/final_space.rb +51 -0
  152. data/lib/faker/tv_shows/futurama.rb +65 -0
  153. data/lib/faker/tv_shows/michael_scott.rb +0 -3
  154. data/lib/faker/tv_shows/simpsons.rb +14 -0
  155. data/lib/faker/tv_shows/south_park.rb +15 -0
  156. data/lib/faker/tv_shows/spongebob.rb +50 -0
  157. data/lib/faker/tv_shows/suits.rb +37 -0
  158. data/lib/faker/tv_shows/supernatural.rb +48 -0
  159. data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +17 -4
  160. data/lib/faker/tv_shows/the_office.rb +37 -0
  161. data/lib/faker/version.rb +2 -2
  162. data/lib/faker.rb +51 -87
  163. data/lib/helpers/base58.rb +1 -1
  164. data/lib/helpers/char.rb +22 -27
  165. data/lib/helpers/deprecator.rb +53 -0
  166. data/lib/helpers/positional_generator.rb +480 -0
  167. data/lib/helpers/unique_generator.rb +13 -13
  168. data/lib/locales/README.md +18 -2
  169. data/lib/locales/ar.yml +6 -1
  170. data/lib/locales/bg.yml +1 -2
  171. data/lib/locales/da-DK.yml +529 -35
  172. data/lib/locales/de-AT.yml +3487 -25
  173. data/lib/locales/de-CH.yml +6020 -9
  174. data/lib/locales/de.yml +7185 -97
  175. data/lib/locales/ee.yml +0 -1
  176. data/lib/locales/en/address.yml +1828 -562
  177. data/lib/locales/en/adjective.yml +179 -0
  178. data/lib/locales/en/airport.yml +381 -0
  179. data/lib/locales/en/animal.yml +1 -1
  180. data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
  181. data/lib/locales/en/archer.yml +75 -0
  182. data/lib/locales/en/australia.yml +108 -0
  183. data/lib/locales/en/avatar.yml +31 -0
  184. data/lib/locales/en/bank.yml +2 -2
  185. data/lib/locales/en/barcode.yml +24 -0
  186. data/lib/locales/en/bible.yml +90 -0
  187. data/lib/locales/en/big_bang_theory.yml +38 -0
  188. data/lib/locales/en/bird.yml +1281 -0
  189. data/lib/locales/en/blood.yml +13 -0
  190. data/lib/locales/en/book.yml +487 -3
  191. data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
  192. data/lib/locales/en/buffy.yml +1 -1
  193. data/lib/locales/en/camera.yml +611 -0
  194. data/lib/locales/en/cat.yml +1 -1
  195. data/lib/locales/en/chess.yml +103 -0
  196. data/lib/locales/en/clash_of_clan.yml +101 -0
  197. data/lib/locales/en/coffee.yml +1 -1
  198. data/lib/locales/en/commerce.yml +17 -0
  199. data/lib/locales/en/community.yml +17 -17
  200. data/lib/locales/en/company.yml +3 -2
  201. data/lib/locales/en/computer.yml +55 -0
  202. data/lib/locales/en/conan.yml +171 -0
  203. data/lib/locales/en/control.yml +247 -0
  204. data/lib/locales/en/cowboy_bebop.yml +163 -0
  205. data/lib/locales/en/demographic.yml +218 -5
  206. data/lib/locales/en/departed.yml +50 -0
  207. data/lib/locales/en/device.yml +112 -4
  208. data/lib/locales/en/dnd.yml +636 -0
  209. data/lib/locales/en/dog.yml +262 -7
  210. data/lib/locales/en/doraemon.yml +286 -0
  211. data/lib/locales/en/dota.yml +704 -63
  212. data/lib/locales/en/dragon_ball.yml +243 -1
  213. data/lib/locales/en/driving_license.yml +181 -0
  214. data/lib/locales/en/drone.yml +95 -0
  215. data/lib/locales/en/dune.yml +270 -131
  216. data/lib/locales/en/educator.yml +6 -0
  217. data/lib/locales/en/elder_scrolls.yml +583 -9
  218. data/lib/locales/en/emotion.yml +480 -0
  219. data/lib/locales/en/fallout.yml +311 -133
  220. data/lib/locales/en/file.yml +9 -1
  221. data/lib/locales/en/final_fantasy_xiv.yml +754 -0
  222. data/lib/locales/en/final_space.yml +37 -0
  223. data/lib/locales/en/finance.yml +80 -4
  224. data/lib/locales/en/food.yml +1067 -10
  225. data/lib/locales/en/football.yml +3 -3
  226. data/lib/locales/en/fresh_prince_of_bel_air.yml +1 -1
  227. data/lib/locales/en/fullmetal_alchemist_brotherhood.yml +78 -0
  228. data/lib/locales/en/futurama.yml +344 -0
  229. data/lib/locales/en/game.yml +11 -0
  230. data/lib/locales/en/hackers.yml +53 -0
  231. data/lib/locales/en/half_life.yml +84 -3
  232. data/lib/locales/en/harry_potter.yml +1 -1
  233. data/lib/locales/en/heroes.yml +408 -3
  234. data/lib/locales/en/heroes_of_the_storm.yml +131 -4
  235. data/lib/locales/en/hobby.yml +171 -0
  236. data/lib/locales/en/horse.yml +2 -2
  237. data/lib/locales/en/house.yml +1 -1
  238. data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
  239. data/lib/locales/en/id_number.yml +1 -1
  240. data/lib/locales/en/internet.yml +136 -3
  241. data/lib/locales/en/jack_handey.yml +54 -0
  242. data/lib/locales/en/kamen_rider.yml +452 -0
  243. data/lib/locales/en/kpop.yml +7 -7
  244. data/lib/locales/en/league_of_legends.yml +285 -6
  245. data/lib/locales/en/lebowski.yml +1 -1
  246. data/lib/locales/en/lovecraft.yml +76 -6
  247. data/lib/locales/en/military.yml +179 -5
  248. data/lib/locales/en/minecraft.yml +663 -0
  249. data/lib/locales/en/mitch_hedberg.yml +46 -0
  250. data/lib/locales/en/mountain.yml +171 -0
  251. data/lib/locales/en/mountaineering.yml +14 -0
  252. data/lib/locales/en/movie.yml +194 -2
  253. data/lib/locales/en/music.yml +461 -29
  254. data/lib/locales/en/myst.yml +87 -31
  255. data/lib/locales/en/name.yml +5 -4
  256. data/lib/locales/en/naruto.yml +230 -0
  257. data/lib/locales/en/one_piece.yml +2 -2
  258. data/lib/locales/en/opera.yml +169 -1
  259. data/lib/locales/en/overwatch.yml +2648 -2622
  260. data/lib/locales/en/pearl_jam.yml +213 -0
  261. data/lib/locales/en/phish.yml +392 -1
  262. data/lib/locales/en/phone_number.yml +78 -3
  263. data/lib/locales/en/pokemon.yml +417 -4
  264. data/lib/locales/en/prince.yml +227 -0
  265. data/lib/locales/en/quote.yml +692 -163
  266. data/lib/locales/en/rock_band.yml +1 -0
  267. data/lib/locales/en/rush.yml +32 -0
  268. data/lib/locales/en/science.yml +481 -3
  269. data/lib/locales/en/shakespeare.yml +21 -24
  270. data/lib/locales/en/simpsons.yml +668 -0
  271. data/lib/locales/en/smashing_pumpkins.yml +382 -0
  272. data/lib/locales/en/source.yml +35 -0
  273. data/lib/locales/en/south_park.yml +360 -2
  274. data/lib/locales/en/space.yml +1 -1
  275. data/lib/locales/en/spongebob.yml +489 -0
  276. data/lib/locales/en/sport.yml +130 -0
  277. data/lib/locales/en/star_trek.yml +1 -1
  278. data/lib/locales/en/star_wars.yml +568 -220
  279. data/lib/locales/en/stranger_thing.yml +1 -1
  280. data/lib/locales/en/street_fighter.yml +1524 -0
  281. data/lib/locales/en/studio_ghibli.yml +107 -0
  282. data/lib/locales/en/suits.yml +45 -0
  283. data/lib/locales/en/super_mario.yml +58 -0
  284. data/lib/locales/en/super_smash_bros.yml +23 -6
  285. data/lib/locales/en/supernatural.yml +141 -0
  286. data/lib/locales/en/tarkov.yml +593 -0
  287. data/lib/locales/en/tea.yml +172 -0
  288. data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
  289. data/lib/locales/en/the_office.yml +86 -0
  290. data/lib/locales/en/the_room.yml +68 -0
  291. data/lib/locales/en/theater.yml +597 -0
  292. data/lib/locales/en/tolkien.yml +2453 -0
  293. data/lib/locales/en/touhou.yml +839 -0
  294. data/lib/locales/en/train_station.yml +280 -0
  295. data/lib/locales/en/tron.yml +227 -0
  296. data/lib/locales/en/vehicle.yml +2809 -75
  297. data/lib/locales/en/volleyball.yml +501 -0
  298. data/lib/locales/en/warhammer_fantasy.yml +582 -0
  299. data/lib/locales/en/witcher.yml +426 -7
  300. data/lib/locales/en/world_of_warcraft.yml +122 -4
  301. data/lib/locales/en/zelda.yml +962 -4
  302. data/lib/locales/en-AU.yml +728 -17
  303. data/lib/locales/en-CA.yml +373 -16
  304. data/lib/locales/en-GB.yml +116 -8
  305. data/lib/locales/en-IND.yml +1259 -16
  306. data/lib/locales/en-KE.yml +212 -0
  307. data/lib/locales/en-MS.yml +364 -16
  308. data/lib/locales/en-NEP.yml +212 -35
  309. data/lib/locales/en-NG.yml +1 -0
  310. data/lib/locales/en-NZ.yml +1153 -121
  311. data/lib/locales/en-PAK.yml +369 -9
  312. data/lib/locales/en-SG.yml +581 -15
  313. data/lib/locales/en-UG.yml +1 -0
  314. data/lib/locales/en-US.yml +6937 -71
  315. data/lib/locales/en-ZA.yml +1 -1
  316. data/lib/locales/en-au-ocker.yml +266 -21
  317. data/lib/locales/en.yml +0 -3
  318. data/lib/locales/es-AR.yml +4570 -0
  319. data/lib/locales/es-MX.yml +1 -2
  320. data/lib/locales/es.yml +58 -3
  321. data/lib/locales/fi-FI.yml +4 -2
  322. data/lib/locales/fr/address.yml +20 -0
  323. data/lib/locales/fr/adjective.yml +266 -0
  324. data/lib/locales/fr/ancient.yml +141 -0
  325. data/lib/locales/fr/animal.yml +5 -0
  326. data/lib/locales/fr/appliance.yml +4 -0
  327. data/lib/locales/fr/book.yml +7 -0
  328. data/lib/locales/fr/color.yml +4 -0
  329. data/lib/locales/fr/company.yml +17 -0
  330. data/lib/locales/fr/compass.yml +23 -0
  331. data/lib/locales/fr/demographic.yml +4 -0
  332. data/lib/locales/fr/gender.yml +6 -0
  333. data/lib/locales/fr/internet.yml +4 -0
  334. data/lib/locales/fr/lorem.yml +5 -0
  335. data/lib/locales/fr/measurement.yml +7 -0
  336. data/lib/locales/fr/name.yml +22 -0
  337. data/lib/locales/fr/phone_number.yml +7 -0
  338. data/lib/locales/fr/pokemon.yml +7 -0
  339. data/lib/locales/fr-CA.yml +2748 -43
  340. data/lib/locales/fr-CH.yml +3 -4
  341. data/lib/locales/fr.yml +2 -112
  342. data/lib/locales/hy.yml +3624 -119
  343. data/lib/locales/id.yml +839 -10
  344. data/lib/locales/it.yml +1304 -31
  345. data/lib/locales/ja/README.md +13 -0
  346. data/lib/locales/ja/address.yml +120539 -0
  347. data/lib/locales/ja/adjective.yml +148 -0
  348. data/lib/locales/ja/ancient.yml +4 -0
  349. data/lib/locales/ja/animal.yml +5 -0
  350. data/lib/locales/ja/bank.yml +4 -0
  351. data/lib/locales/ja/book.yml +7 -0
  352. data/lib/locales/ja/cat.yml +5 -0
  353. data/lib/locales/ja/coffee.yml +4 -0
  354. data/lib/locales/ja/color.yml +4 -0
  355. data/lib/locales/ja/commerce.yml +11 -0
  356. data/lib/locales/ja/company.yml +8 -0
  357. data/lib/locales/ja/dog.yml +6 -0
  358. data/lib/locales/ja/emotion.yml +51 -0
  359. data/lib/locales/ja/food.yml +4 -0
  360. data/lib/locales/ja/football.yml +115 -0
  361. data/lib/locales/ja/gender.yml +4 -0
  362. data/lib/locales/ja/lorem.yml +9 -0
  363. data/lib/locales/ja/name.yml +13 -0
  364. data/lib/locales/ja/naruto.yml +230 -0
  365. data/lib/locales/ja/overwatch.yml +5 -0
  366. data/lib/locales/ja/phone_number.yml +7 -0
  367. data/lib/locales/ja/pokemon.yml +7 -0
  368. data/lib/locales/ja/relationship.yml +10 -0
  369. data/lib/locales/ja/restaurant.yml +11 -0
  370. data/lib/locales/ja/space.yml +5 -0
  371. data/lib/locales/ja/sport.yml +130 -0
  372. data/lib/locales/ja/studio_ghibli.yml +112 -0
  373. data/lib/locales/ja/subscription.yml +8 -0
  374. data/lib/locales/ja/super_mario.yml +9 -0
  375. data/lib/locales/ja/super_smash_bros.yml +8 -0
  376. data/lib/locales/ja/touhou.yml +466 -0
  377. data/lib/locales/ja/university.yml +9 -0
  378. data/lib/locales/ja/zelda.yml +5 -0
  379. data/lib/locales/ko.yml +1450 -17
  380. data/lib/locales/lt.yml +315 -0
  381. data/lib/locales/lv.yml +1 -2
  382. data/lib/locales/mi-NZ.yml +283 -0
  383. data/lib/locales/nb-NO.yml +518 -27
  384. data/lib/locales/nl.yml +1 -1
  385. data/lib/locales/pl.yml +1 -2
  386. data/lib/locales/pt-BR.yml +8157 -659
  387. data/lib/locales/pt.yml +844 -43
  388. data/lib/locales/ru.yml +1355 -30
  389. data/lib/locales/sk.yml +4410 -41
  390. data/lib/locales/sv.yml +100 -0
  391. data/lib/locales/th.yml +76 -76
  392. data/lib/locales/tr.yml +1 -2
  393. data/lib/locales/uk.yml +1810 -44
  394. data/lib/locales/vi.yml +1 -0
  395. data/lib/locales/zh-CN/bank.yml +17 -0
  396. data/lib/locales/zh-CN.yml +1 -0
  397. data/lib/locales/zh-TW.yml +1 -0
  398. metadata +192 -127
  399. data/History.md +0 -176
  400. data/lib/faker/default/fillmurray.rb +0 -45
  401. data/lib/faker/default/lorem_pixel.rb +0 -47
  402. data/lib/locales/en/hobbit.yml +0 -19
  403. data/lib/locales/en/lord_of_the_rings.yml +0 -6
  404. data/lib/locales/ja.yml +0 -101
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class JapaneseMedia
5
+ class FullmetalAlchemistBrotherhood < Base
6
+ class << self
7
+ ##
8
+ # Produces a character from FullmetalAlchemistBrotherhood.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::JapaneseMedia::FullmetalAlchemistBrotherhood.character #=> "Edward Elric"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('fullmetal_alchemist_brotherhood.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a cities from FullmetalAlchemistBrotherhood.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::JapaneseMedia::FullmetalAlchemistBrotherhood.city #=> "Central City"
27
+ #
28
+ # @faker.version next
29
+ def city
30
+ fetch('fullmetal_alchemist_brotherhood.cities')
31
+ end
32
+
33
+ ##
34
+ # Produces a country from FullmetalAlchemistBrotherhood.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::JapaneseMedia::FullmetalAlchemistBrotherhood.country #=> "Xing"
40
+ #
41
+ # @faker.version next
42
+ def country
43
+ fetch('fullmetal_alchemist_brotherhood.countries')
44
+ end
45
+ end
46
+ end
47
+
48
+ include Faker::Deprecator
49
+ deprecate_generator('FmaBrotherhood', FullmetalAlchemistBrotherhood)
50
+ end
51
+ end
@@ -0,0 +1,102 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class JapaneseMedia
5
+ class KamenRider < Base
6
+ class << self
7
+ ERAS = %i[showa heisei reiwa].freeze
8
+
9
+ def eras=(new_eras)
10
+ selected_eras = ERAS & new_eras
11
+ @eras = selected_eras.empty? ? ERAS : selected_eras
12
+ end
13
+
14
+ ##
15
+ # Produces the name of a Kamen Rider from a series in the given era.
16
+ #
17
+ # @return [String]
18
+ #
19
+ # @example
20
+ # Faker::JapaneseMedia::KamenRider.kamen_rider #=> "Kamen Rider Revice"
21
+ #
22
+ # @faker.version next
23
+ def kamen_rider(*eras)
24
+ from_eras(*eras, field: :kamen_riders)
25
+ end
26
+
27
+ ##
28
+ # Produces the name of a main user of Kamen Rider.
29
+ #
30
+ # @return [String]
31
+ #
32
+ # @example
33
+ # Faker::JapaneseMedia::KamenRider.user #=> "Ikki Igarashi"
34
+ #
35
+ # @faker.version next
36
+ def user(*eras)
37
+ from_eras(*eras, field: :users)
38
+ end
39
+
40
+ ##
41
+ # Produces the name of a Kamen Rider series.
42
+ #
43
+ # @return [String]
44
+ #
45
+ # @example
46
+ # Faker::JapaneseMedia::KamenRider.series #=> "Kamen Rider Revice"
47
+ #
48
+ # @faker.version next
49
+ def series(*eras)
50
+ from_eras(*eras, field: :series)
51
+ end
52
+
53
+ ##
54
+ # Produces the name of a collectible device from a Kamen Rider series.
55
+ #
56
+ # @return [String]
57
+ #
58
+ # @example
59
+ # Faker::JapaneseMedia::KamenRider.collectible_device #=> "Vistamp"
60
+ #
61
+ # @faker.version next
62
+ def collectible_device(*eras)
63
+ from_eras(*eras, field: :collectible_devices) { |e| e.delete(:showa) }
64
+ end
65
+
66
+ # Produces the name of a transformation device used by a Kamen Rider
67
+ # from the given eras.
68
+ #
69
+ # @return [String]
70
+ #
71
+ # @example Faker::JapaneseMedia::KamenRider.transformation_device #=>
72
+ # "Revice Driver"
73
+ #
74
+ # @faker.version next
75
+ def transformation_device(*eras)
76
+ from_eras(*eras, field: :transformation_devices)
77
+ end
78
+
79
+ private
80
+
81
+ def eras
82
+ @eras ||= ERAS
83
+ end
84
+
85
+ def from_eras(*input_eras, field:)
86
+ selected_eras = (ERAS & input_eras).then do |selected|
87
+ selected.empty? ? eras : selected
88
+ end.dup
89
+ yield(selected_eras) if block_given?
90
+
91
+ raise UnavailableInEra, "#{field} is unavailable in the selected eras." if selected_eras.empty?
92
+
93
+ selected_eras.sample.then do |era|
94
+ fetch("kamen_rider.#{era}.#{field}")
95
+ end
96
+ end
97
+
98
+ class UnavailableInEra < StandardError; end
99
+ end
100
+ end
101
+ end
102
+ end
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class JapaneseMedia
5
+ class Naruto < Base
6
+ class << self
7
+ ##
8
+ # Produces a character from Naruto.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::JapaneseMedia::Naruto.character #=> "Naruto Uzumaki"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('naruto.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a village from Naruto.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::JapaneseMedia::Naruto.village #=> "Konohagakure (Leaf Village)"
27
+ #
28
+ # @faker.version next
29
+ def village
30
+ fetch('naruto.villages')
31
+ end
32
+
33
+ ##
34
+ # Produces a eye from Naruto.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::JapaneseMedia::Naruto.eye #=> "Konohagakure (Byakugan)"
40
+ #
41
+ # @faker.version next
42
+ def eye
43
+ fetch('naruto.eyes')
44
+ end
45
+
46
+ ##
47
+ # Produces a demon from Naruto.
48
+ #
49
+ # @return [String]
50
+ #
51
+ # @example
52
+ # Faker::JapaneseMedia::Naruto.demon #=> "Nine-Tails (Kurama)"
53
+ #
54
+ # @faker.version next
55
+ def demon
56
+ fetch('naruto.demons')
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -79,7 +79,7 @@ module Faker
79
79
  #
80
80
  # @faker.version 1.8.5
81
81
  def akuma_no_mi
82
- fetch('one_piece.akumas_no_mi')
82
+ fetch('one_piece.akuma_no_mi')
83
83
  end
84
84
  end
85
85
  end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class JapaneseMedia
5
+ class StudioGhibli < Base
6
+ class << self
7
+ ##
8
+ # Produces a character from the Studio Ghibli.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::JapaneseMedia::StudioGhibli.character #=> "Chihiro"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('studio_ghibli.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a quote from Studio Ghibli's movies.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::JapaneseMedia::StudioGhibli.quote #=> "One thing you can always count on is that hearts change."
27
+ #
28
+ # @faker.version next
29
+ def quote
30
+ fetch('studio_ghibli.quotes')
31
+ end
32
+
33
+ ##
34
+ # Produces a movie from Studio Ghibli.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::JapaneseMedia::StudioGhibli.movie #=> "Kiki's Delivery Service"
40
+ #
41
+ # @faker.version next
42
+ def movie
43
+ fetch('studio_ghibli.movies')
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Locations
5
+ class Australia < Base
6
+ class << self
7
+ ##
8
+ # Produces a location in Australia
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Locations::Australia.location
14
+ # #=> "Sydney"
15
+ #
16
+ # @faker.version next
17
+ def location
18
+ fetch('locations.australia.locations')
19
+ end
20
+
21
+ # Produces an Australian animal
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Locations::Australia.animal
27
+ # #=> "Dingo"
28
+ #
29
+ # @faker.version next
30
+ def animal
31
+ fetch('locations.australia.animals')
32
+ end
33
+
34
+ # Produces an Australian State or Territory
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Locations::Australia.state
40
+ # #=> "New South Wales"
41
+ #
42
+ # @faker.version next
43
+ def state
44
+ fetch('locations.australia.states')
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ include Deprecator
51
+ deprecate_generator('Australia', Locations::Australia)
52
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Movies
5
+ class Avatar < Base
6
+ class << self
7
+ ##
8
+ # Produces a character from Avatar.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Movies::Avatar.character #=> "Jake Sully"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('avatar.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a date from Avatar.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Movies::Avatar.date #=> "December 15, 2022"
27
+ #
28
+ # @faker.version next
29
+ def date
30
+ fetch('avatar.dates')
31
+ end
32
+
33
+ ##
34
+ # Produces a quote from Avatar.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Movies::Avatar.quote
40
+ # #=> "If it ain't raining, we ain't training."
41
+ #
42
+ # @faker.version next
43
+ def quote
44
+ fetch('avatar.quotes')
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Movies
5
+ class Departed < Base
6
+ class << self
7
+ ##
8
+ # Produces an actor from The Departed.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Movies::Departed.actor #=> "Matt Damon"
14
+ #
15
+ # @faker.version 2.13.0
16
+ def actor
17
+ fetch('departed.actors')
18
+ end
19
+
20
+ ##
21
+ # Produces a character from The Departed.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Movies::Departed.character #=> "Frank Costello"
27
+ #
28
+ # @faker.version 2.13.0
29
+ def character
30
+ fetch('departed.characters')
31
+ end
32
+
33
+ ##
34
+ # Produces a quote from The Departed.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Movies::Departed.quote
40
+ # #=> "I'm the guy who does his job. You must be the other guy"
41
+ #
42
+ # @faker.version 2.13.0
43
+ def quote
44
+ fetch('departed.quotes')
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Movies
5
+ class Hackers < Base
6
+ class << self
7
+ ##
8
+ # Produces a real character name from Hackers.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Movies::Hackers.character #=> "Dade Murphy"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('hackers.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a character hacker "handle" from Hackers.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Movies::Hackers.handle #=> "Zero Cool"
27
+ #
28
+ # @faker.version next
29
+ def handle
30
+ fetch('hackers.handles')
31
+ end
32
+
33
+ ##
34
+ # Produces a quote from Hackers.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Movies::Hackers.quote #=> "Hack the Planet!"
40
+ #
41
+ # @faker.version next
42
+ def quote
43
+ fetch('hackers.quotes')
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -14,7 +14,7 @@ module Faker
14
14
  #
15
15
  # @faker.version 1.8.0
16
16
  def character
17
- fetch('hobbit.character')
17
+ fetch('tolkien.hobbit.character')
18
18
  end
19
19
 
20
20
  ##
@@ -27,7 +27,7 @@ module Faker
27
27
  #
28
28
  # @faker.version 1.8.0
29
29
  def thorins_company
30
- fetch('hobbit.thorins_company')
30
+ fetch('tolkien.hobbit.thorins_company')
31
31
  end
32
32
 
33
33
  ##
@@ -41,7 +41,7 @@ module Faker
41
41
  #
42
42
  # @faker.version 1.8.0
43
43
  def quote
44
- fetch('hobbit.quote')
44
+ fetch('tolkien.hobbit.quote')
45
45
  end
46
46
 
47
47
  ##
@@ -54,7 +54,7 @@ module Faker
54
54
  #
55
55
  # @faker.version 1.8.0
56
56
  def location
57
- fetch('hobbit.location')
57
+ fetch('tolkien.hobbit.location')
58
58
  end
59
59
  end
60
60
  end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Faker
4
+ class Movies
5
+ class HowToTrainYourDragon < Base
6
+ class << self
7
+ ##
8
+ # Produces a character from How To Train Your Dragon.
9
+ #
10
+ # @return [String]
11
+ #
12
+ # @example
13
+ # Faker::Movies::HowToTrainYourDragon.character #=> "Hiccup"
14
+ #
15
+ # @faker.version next
16
+ def character
17
+ fetch('how_to_train_your_dragon.characters')
18
+ end
19
+
20
+ ##
21
+ # Produces a location from How To Train Your Dragon.
22
+ #
23
+ # @return [String]
24
+ #
25
+ # @example
26
+ # Faker::Movies::HowToTrainYourDragon.location #=> "Berk"
27
+ #
28
+ # @faker.version next
29
+ def location
30
+ fetch('how_to_train_your_dragon.locations')
31
+ end
32
+
33
+ ##
34
+ # Produces a dragon from How To Train Your Dragon.
35
+ #
36
+ # @return [String]
37
+ #
38
+ # @example
39
+ # Faker::Movies::HowToTrainYourDragon.dragons #=> "Toothless"
40
+ #
41
+ # @faker.version next
42
+ def dragon
43
+ fetch('how_to_train_your_dragon.dragons')
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -14,7 +14,7 @@ module Faker
14
14
  #
15
15
  # @faker.version 1.7.0
16
16
  def character
17
- fetch('lord_of_the_rings.characters')
17
+ fetch('tolkien.lord_of_the_rings.characters')
18
18
  end
19
19
 
20
20
  ##
@@ -27,7 +27,7 @@ module Faker
27
27
  #
28
28
  # @faker.version 1.7.0
29
29
  def location
30
- fetch('lord_of_the_rings.locations')
30
+ fetch('tolkien.lord_of_the_rings.locations')
31
31
  end
32
32
 
33
33
  ##
@@ -41,7 +41,7 @@ module Faker
41
41
  #
42
42
  # @faker.version 1.9.0
43
43
  def quote
44
- fetch('lord_of_the_rings.quotes')
44
+ fetch('tolkien.lord_of_the_rings.quotes')
45
45
  end
46
46
  end
47
47
  end
@@ -3,6 +3,19 @@
3
3
  module Faker
4
4
  class Movie < Base
5
5
  class << self
6
+ ##
7
+ # Produces a title from a movie.
8
+ #
9
+ # @return [String]
10
+ #
11
+ # @example
12
+ # Faker::Movie.title #=> "The Lord of the Rings: The Two Towers"
13
+ #
14
+ # @faker.version 2.13.0
15
+ def title
16
+ fetch('movie.title')
17
+ end
18
+
6
19
  ##
7
20
  # Produces a quote from a movie.
8
21
  #