faker 1.1.2 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +2446 -0
- data/History.md +176 -0
- data/License.txt +2 -2
- data/README.md +495 -47
- data/bin/faker +5 -0
- data/lib/faker/blockchain/aeternity.rb +70 -0
- data/lib/faker/blockchain/bitcoin.rb +60 -0
- data/lib/faker/blockchain/ethereum.rb +26 -0
- data/lib/faker/blockchain/tezos.rb +135 -0
- data/lib/faker/books/book.rb +61 -0
- data/lib/faker/books/culture_series.rb +83 -0
- data/lib/faker/books/dune.rb +124 -0
- data/lib/faker/books/lovecraft.rb +249 -0
- data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
- data/lib/faker/creature/animal.rb +22 -0
- data/lib/faker/creature/bird.rb +203 -0
- data/lib/faker/creature/cat.rb +50 -0
- data/lib/faker/creature/dog.rb +115 -0
- data/lib/faker/creature/horse.rb +37 -0
- data/lib/faker/default/address.rb +348 -0
- data/lib/faker/default/adjective.rb +35 -0
- data/lib/faker/default/alphanumeric.rb +67 -0
- data/lib/faker/default/ancient.rb +59 -0
- data/lib/faker/default/app.rb +68 -0
- data/lib/faker/default/appliance.rb +33 -0
- data/lib/faker/default/artist.rb +20 -0
- data/lib/faker/default/avatar.rb +49 -0
- data/lib/faker/default/bank.rb +199 -0
- data/lib/faker/default/barcode.rb +165 -0
- data/lib/faker/default/beer.rb +113 -0
- data/lib/faker/default/blood.rb +48 -0
- data/lib/faker/default/boolean.rb +23 -0
- data/lib/faker/default/bossa_nova.rb +33 -0
- data/lib/faker/default/business.rb +50 -0
- data/lib/faker/default/camera.rb +46 -0
- data/lib/faker/default/cannabis.rb +135 -0
- data/lib/faker/default/chile_rut.rb +92 -0
- data/lib/faker/default/chuck_norris.rb +25 -0
- data/lib/faker/default/code.rb +269 -0
- data/lib/faker/default/coffee.rb +82 -0
- data/lib/faker/default/coin.rb +33 -0
- data/lib/faker/default/color.rb +150 -0
- data/lib/faker/default/commerce.rb +157 -0
- data/lib/faker/default/company.rb +584 -0
- data/lib/faker/default/compass.rb +202 -0
- data/lib/faker/default/computer.rb +63 -0
- data/lib/faker/default/construction.rb +83 -0
- data/lib/faker/default/cosmere.rb +138 -0
- data/lib/faker/default/crypto.rb +61 -0
- data/lib/faker/default/crypto_coin.rb +82 -0
- data/lib/faker/default/currency.rb +46 -0
- data/lib/faker/default/date.rb +153 -0
- data/lib/faker/default/dc_comics.rb +70 -0
- data/lib/faker/default/demographic.rb +94 -0
- data/lib/faker/default/dessert.rb +48 -0
- data/lib/faker/default/device.rb +85 -0
- data/lib/faker/default/driving_licence.rb +121 -0
- data/lib/faker/default/drone.rb +332 -0
- data/lib/faker/default/educator.rb +102 -0
- data/lib/faker/default/electrical_components.rb +48 -0
- data/lib/faker/default/emotion.rb +33 -0
- data/lib/faker/default/esport.rb +72 -0
- data/lib/faker/default/file.rb +81 -0
- data/lib/faker/default/finance.rb +112 -0
- data/lib/faker/default/food.rb +139 -0
- data/lib/faker/default/funny_name.rb +90 -0
- data/lib/faker/default/gender.rb +46 -0
- data/lib/faker/default/greek_philosophers.rb +33 -0
- data/lib/faker/default/hacker.rb +103 -0
- data/lib/faker/default/hipster.rb +155 -0
- data/lib/faker/default/hobby.rb +22 -0
- data/lib/faker/default/house.rb +33 -0
- data/lib/faker/default/id_number.rb +410 -0
- data/lib/faker/default/industry_segments.rb +61 -0
- data/lib/faker/default/internet.rb +612 -0
- data/lib/faker/default/internet_http.rb +48 -0
- data/lib/faker/default/invoice.rb +123 -0
- data/lib/faker/default/job.rb +61 -0
- data/lib/faker/default/json.rb +125 -0
- data/lib/faker/default/kpop.rb +85 -0
- data/lib/faker/default/lorem.rb +250 -0
- data/lib/faker/default/lorem_flickr.rb +110 -0
- data/lib/faker/default/markdown.rb +170 -0
- data/lib/faker/default/marketing.rb +22 -0
- data/lib/faker/default/measurement.rb +175 -0
- data/lib/faker/default/military.rb +98 -0
- data/lib/faker/default/mountain.rb +33 -0
- data/lib/faker/default/name.rb +152 -0
- data/lib/faker/default/nation.rb +73 -0
- data/lib/faker/default/nato_phonetic_alphabet.rb +20 -0
- data/lib/faker/default/nhs.rb +53 -0
- data/lib/faker/default/number.rb +244 -0
- data/lib/faker/default/omniauth.rb +471 -0
- data/lib/faker/default/phone_number.rb +133 -0
- data/lib/faker/default/placeholdit.rb +52 -0
- data/lib/faker/default/programming_language.rb +33 -0
- data/lib/faker/default/relationship.rb +87 -0
- data/lib/faker/default/religion.rb +6 -0
- data/lib/faker/default/restaurant.rb +63 -0
- data/lib/faker/default/science.rb +154 -0
- data/lib/faker/default/slack_emoji.rb +124 -0
- data/lib/faker/default/source.rb +63 -0
- data/lib/faker/default/south_africa.rb +141 -0
- data/lib/faker/default/space.rb +191 -0
- data/lib/faker/default/string.rb +59 -0
- data/lib/faker/default/stripe.rb +126 -0
- data/lib/faker/default/subscription.rb +70 -0
- data/lib/faker/default/superhero.rb +72 -0
- data/lib/faker/default/tea.rb +41 -0
- data/lib/faker/default/team.rb +74 -0
- data/lib/faker/default/time.rb +149 -0
- data/lib/faker/default/twitter.rb +207 -0
- data/lib/faker/default/types.rb +160 -0
- data/lib/faker/default/university.rb +75 -0
- data/lib/faker/default/vehicle.rb +320 -0
- data/lib/faker/default/verb.rb +72 -0
- data/lib/faker/default/vulnerability_identifier.rb +23 -0
- data/lib/faker/default/world_cup.rb +77 -0
- data/lib/faker/fantasy/tolkien.rb +67 -0
- data/lib/faker/games/clash_of_clans.rb +48 -0
- data/lib/faker/games/control.rb +113 -0
- data/lib/faker/games/dnd.rb +178 -0
- data/lib/faker/games/dota.rb +89 -0
- data/lib/faker/games/elder_scrolls.rb +139 -0
- data/lib/faker/games/fallout.rb +62 -0
- data/lib/faker/games/game.rb +48 -0
- data/lib/faker/games/half_life.rb +48 -0
- data/lib/faker/games/heroes.rb +61 -0
- data/lib/faker/games/heroes_of_the_storm.rb +72 -0
- data/lib/faker/games/league_of_legends.rb +87 -0
- data/lib/faker/games/minecraft.rb +113 -0
- data/lib/faker/games/myst.rb +74 -0
- data/lib/faker/games/overwatch.rb +48 -0
- data/lib/faker/games/pokemon.rb +48 -0
- data/lib/faker/games/sonic_the_hedgehog.rb +48 -0
- data/lib/faker/games/street_fighter.rb +61 -0
- data/lib/faker/games/super_mario.rb +48 -0
- data/lib/faker/games/super_smash_bros.rb +35 -0
- data/lib/faker/games/tarkov.rb +205 -0
- data/lib/faker/games/touhou.rb +75 -0
- data/lib/faker/games/warhammer_fantasy.rb +74 -0
- data/lib/faker/games/witcher.rb +126 -0
- data/lib/faker/games/world_of_warcraft.rb +60 -0
- data/lib/faker/games/zelda.rb +62 -0
- data/lib/faker/japanese_media/conan.rb +48 -0
- data/lib/faker/japanese_media/cowboy_bebop.rb +61 -0
- data/lib/faker/japanese_media/doraemon.rb +48 -0
- data/lib/faker/japanese_media/dragon_ball.rb +48 -0
- data/lib/faker/japanese_media/fullmetal_alchemist_brotherhood.rb +48 -0
- data/lib/faker/japanese_media/kamen_rider.rb +102 -0
- data/lib/faker/japanese_media/naruto.rb +61 -0
- data/lib/faker/japanese_media/one_piece.rb +87 -0
- data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
- data/lib/faker/japanese_media/sword_art_online.rb +61 -0
- data/lib/faker/locations/australia.rb +47 -0
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/movies/back_to_the_future.rb +49 -0
- data/lib/faker/movies/departed.rb +49 -0
- data/lib/faker/movies/ghostbusters.rb +49 -0
- data/lib/faker/movies/hackers.rb +48 -0
- data/lib/faker/movies/harry_potter.rb +87 -0
- data/lib/faker/movies/hitchhikers_guide_to_the_galaxy.rb +106 -0
- data/lib/faker/movies/hobbit.rb +62 -0
- data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
- data/lib/faker/movies/lebowski.rb +48 -0
- data/lib/faker/movies/lord_of_the_rings.rb +49 -0
- data/lib/faker/movies/movie.rb +33 -0
- data/lib/faker/movies/princess_bride.rb +36 -0
- data/lib/faker/movies/room.rb +63 -0
- data/lib/faker/movies/star_wars.rb +269 -0
- data/lib/faker/movies/tron.rb +161 -0
- data/lib/faker/movies/v_for_vendetta.rb +50 -0
- data/lib/faker/music/grateful_dead.rb +37 -0
- data/lib/faker/music/hiphop.rb +48 -0
- data/lib/faker/music/music.rb +145 -0
- data/lib/faker/music/opera.rb +298 -0
- data/lib/faker/music/pearl_jam.rb +50 -0
- data/lib/faker/music/phish.rb +48 -0
- data/lib/faker/music/prince.rb +64 -0
- data/lib/faker/music/rock_band.rb +34 -0
- data/lib/faker/music/rush.rb +37 -0
- data/lib/faker/music/show.rb +49 -0
- data/lib/faker/music/umphreys_mcgee.rb +22 -0
- data/lib/faker/quotes/chiquito.rb +80 -0
- data/lib/faker/quotes/quote.rb +124 -0
- data/lib/faker/quotes/rajnikanth.rb +27 -0
- data/lib/faker/quotes/shakespeare.rb +111 -0
- data/lib/faker/religion/bible.rb +50 -0
- data/lib/faker/sports/basketball.rb +61 -0
- data/lib/faker/sports/chess.rb +90 -0
- data/lib/faker/sports/football.rb +74 -0
- data/lib/faker/sports/mountaineering.rb +22 -0
- data/lib/faker/sports/sport.rb +116 -0
- data/lib/faker/sports/volleyball.rb +74 -0
- data/lib/faker/travel/airport.rb +43 -0
- data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +37 -0
- data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
- data/lib/faker/tv_shows/bojack_horseman.rb +51 -0
- data/lib/faker/tv_shows/breaking_bad.rb +37 -0
- data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
- data/lib/faker/tv_shows/buffy.rb +89 -0
- data/lib/faker/tv_shows/community.rb +38 -0
- data/lib/faker/tv_shows/dr_who.rb +115 -0
- data/lib/faker/tv_shows/dumb_and_dumber.rb +51 -0
- data/lib/faker/tv_shows/family_guy.rb +51 -0
- data/lib/faker/tv_shows/final_space.rb +51 -0
- data/lib/faker/tv_shows/friends.rb +50 -0
- data/lib/faker/tv_shows/futurama.rb +65 -0
- data/lib/faker/tv_shows/game_of_thrones.rb +77 -0
- data/lib/faker/tv_shows/hey_arnold.rb +50 -0
- data/lib/faker/tv_shows/how_i_met_your_mother.rb +64 -0
- data/lib/faker/tv_shows/michael_scott.rb +23 -0
- data/lib/faker/tv_shows/new_girl.rb +38 -0
- data/lib/faker/tv_shows/parks_and_rec.rb +37 -0
- data/lib/faker/tv_shows/rick_and_morty.rb +51 -0
- data/lib/faker/tv_shows/ru_paul.rb +37 -0
- data/lib/faker/tv_shows/seinfeld.rb +51 -0
- data/lib/faker/tv_shows/silicon_valley.rb +118 -0
- data/lib/faker/tv_shows/simpsons.rb +65 -0
- data/lib/faker/tv_shows/south_park.rb +38 -0
- data/lib/faker/tv_shows/spongebob.rb +50 -0
- data/lib/faker/tv_shows/star_trek.rb +63 -0
- data/lib/faker/tv_shows/stargate.rb +51 -0
- data/lib/faker/tv_shows/stranger_things.rb +38 -0
- data/lib/faker/tv_shows/suits.rb +37 -0
- data/lib/faker/tv_shows/supernatural.rb +48 -0
- data/lib/faker/tv_shows/the_expanse.rb +63 -0
- data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +64 -0
- data/lib/faker/tv_shows/the_it_crowd.rb +64 -0
- data/lib/faker/tv_shows/the_office.rb +37 -0
- data/lib/faker/tv_shows/the_thick_of_it.rb +51 -0
- data/lib/faker/tv_shows/twin_peaks.rb +51 -0
- data/lib/faker/tv_shows/venture_bros.rb +65 -0
- data/lib/faker/version.rb +4 -2
- data/lib/faker.rb +169 -58
- data/lib/helpers/base58.rb +22 -0
- data/lib/helpers/char.rb +61 -0
- data/lib/helpers/unique_generator.rb +60 -0
- data/lib/locales/README.md +40 -0
- data/lib/locales/ar.yml +107 -0
- data/lib/locales/bg.yml +44 -0
- data/lib/locales/ca-CAT.yml +24 -0
- data/lib/locales/ca.yml +23 -0
- data/lib/locales/da-DK.yml +73 -0
- data/lib/locales/de-AT.yml +57 -0
- data/lib/locales/de-CH.yml +1714 -0
- data/lib/locales/de.yml +132 -9
- data/lib/locales/ee.yml +61 -0
- data/lib/locales/en/README.md +13 -0
- data/lib/locales/en/address.yml +586 -0
- data/lib/locales/en/adjective.yml +179 -0
- data/lib/locales/en/airport.yml +381 -0
- data/lib/locales/en/ancient.yml +7 -0
- data/lib/locales/en/animal.yml +6 -0
- data/lib/locales/en/app.yml +8 -0
- data/lib/locales/en/appliance.yml +5 -0
- data/lib/locales/en/aqua_teen_hunger_force.yml +36 -0
- data/lib/locales/en/artist.yml +4 -0
- data/lib/locales/en/australia.yml +107 -0
- data/lib/locales/en/avatar.yml +31 -0
- data/lib/locales/en/back_to_the_future.yml +120 -0
- data/lib/locales/en/bank.yml +302 -0
- data/lib/locales/en/barcode.yml +24 -0
- data/lib/locales/en/basketball.yml +99 -0
- data/lib/locales/en/beer.yml +9 -0
- data/lib/locales/en/bible.yml +90 -0
- data/lib/locales/en/big_bang_theory.yml +38 -0
- data/lib/locales/en/bird.yml +1281 -0
- data/lib/locales/en/blood.yml +13 -0
- data/lib/locales/en/bojack_horseman.yml +6 -0
- data/lib/locales/en/book.yml +491 -0
- data/lib/locales/en/bossa_nova.yml +6 -0
- data/lib/locales/en/breaking_bad.yml +28 -0
- data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
- data/lib/locales/en/buffy.yml +260 -0
- data/lib/locales/en/business.yml +5 -0
- data/lib/locales/en/camera.yml +611 -0
- data/lib/locales/en/cannabis.yml +13 -0
- data/lib/locales/en/cat.yml +7 -0
- data/lib/locales/en/chess.yml +103 -0
- data/lib/locales/en/chiquito.yml +64 -0
- data/lib/locales/en/chuck_norris.yml +82 -0
- data/lib/locales/en/clash_of_clan.yml +101 -0
- data/lib/locales/en/code.yml +4 -0
- data/lib/locales/en/coffee.yml +31 -0
- data/lib/locales/en/coin.yml +6 -0
- data/lib/locales/en/color.yml +4 -0
- data/lib/locales/en/commerce.yml +28 -0
- data/lib/locales/en/community.yml +33 -0
- data/lib/locales/en/company.yml +23 -0
- data/lib/locales/en/compass.yml +34 -0
- data/lib/locales/en/computer.yml +55 -0
- data/lib/locales/en/conan.yml +171 -0
- data/lib/locales/en/construction.yml +425 -0
- data/lib/locales/en/control.yml +247 -0
- data/lib/locales/en/cosmere.yml +57 -0
- data/lib/locales/en/cowboy_bebop.yml +163 -0
- data/lib/locales/en/crypto_coin.yml +25 -0
- data/lib/locales/en/culture_series.yml +307 -0
- data/lib/locales/en/currency.yml +6 -0
- data/lib/locales/en/dc_comics.yml +52 -0
- data/lib/locales/en/demographic.yml +221 -0
- data/lib/locales/en/departed.yml +50 -0
- data/lib/locales/en/dessert.yml +6 -0
- data/lib/locales/en/device.yml +115 -0
- data/lib/locales/en/dnd.yml +636 -0
- data/lib/locales/en/dog.yml +11 -0
- data/lib/locales/en/doraemon.yml +286 -0
- data/lib/locales/en/dota.yml +693 -0
- data/lib/locales/en/dr_who.yml +96 -0
- data/lib/locales/en/dragon_ball.yml +246 -0
- data/lib/locales/en/driving_license.yml +181 -0
- data/lib/locales/en/drone.yml +95 -0
- data/lib/locales/en/dumb_and_dumber.yml +59 -0
- data/lib/locales/en/dune.yml +298 -0
- data/lib/locales/en/educator.yml +80 -0
- data/lib/locales/en/elder_scrolls.yml +585 -0
- data/lib/locales/en/electrical_components.yml +6 -0
- data/lib/locales/en/emotion.yml +480 -0
- data/lib/locales/en/esport.yml +8 -0
- data/lib/locales/en/fallout.yml +315 -0
- data/lib/locales/en/family_guy.yml +7 -0
- data/lib/locales/en/file.yml +13 -0
- data/lib/locales/en/final_space.yml +37 -0
- data/lib/locales/en/finance.yml +189 -0
- data/lib/locales/en/fma_brotherhood.yml +78 -0
- data/lib/locales/en/food.yml +1069 -0
- data/lib/locales/en/football.yml +8 -0
- data/lib/locales/en/fresh_prince_of_bel_air.yml +73 -0
- data/lib/locales/en/friends.yml +6 -0
- data/lib/locales/en/funny_name.yml +4 -0
- data/lib/locales/en/futurama.yml +344 -0
- data/lib/locales/en/game.yml +294 -0
- data/lib/locales/en/game_of_thrones.yml +8 -0
- data/lib/locales/en/gender.yml +6 -0
- data/lib/locales/en/ghostbusters.yml +91 -0
- data/lib/locales/en/grateful_dead.yml +48 -0
- data/lib/locales/en/greek_philosophers.yml +26 -0
- data/lib/locales/en/hacker.yml +8 -0
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/half_life.yml +88 -0
- data/lib/locales/en/harry_potter.yml +9 -0
- data/lib/locales/en/heroes.yml +411 -0
- data/lib/locales/en/heroes_of_the_storm.yml +134 -0
- data/lib/locales/en/hey_arnold.yml +24 -0
- data/lib/locales/en/hipster.yml +4 -0
- data/lib/locales/en/hitchhikers_guide_to_the_galaxy.yml +45 -0
- data/lib/locales/en/hobby.yml +171 -0
- data/lib/locales/en/horse.yml +6 -0
- data/lib/locales/en/house.yml +5 -0
- data/lib/locales/en/how_i_met_your_mother.yml +28 -0
- data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
- data/lib/locales/en/id_number.yml +5 -0
- data/lib/locales/en/industry_segments.yml +7 -0
- data/lib/locales/en/internet.yml +158 -0
- data/lib/locales/en/invoice.yml +6 -0
- data/lib/locales/en/jack_handey.yml +54 -0
- data/lib/locales/en/job.yml +15 -0
- data/lib/locales/en/kamen_rider.yml +452 -0
- data/lib/locales/en/kpop.yml +83 -0
- data/lib/locales/en/league_of_legends.yml +289 -0
- data/lib/locales/en/lebowski.yml +43 -0
- data/lib/locales/en/lorem.yml +11 -0
- data/lib/locales/en/lovecraft.yml +79 -0
- data/lib/locales/en/markdown.yml +5 -0
- data/lib/locales/en/marketing.yml +4 -0
- data/lib/locales/en/measurement.yml +11 -0
- data/lib/locales/en/michael_scott.yml +45 -0
- data/lib/locales/en/military.yml +182 -0
- data/lib/locales/en/minecraft.yml +663 -0
- data/lib/locales/en/mitch_hedberg.yml +46 -0
- data/lib/locales/en/mountain.yml +171 -0
- data/lib/locales/en/mountaineering.yml +14 -0
- data/lib/locales/en/movie.yml +197 -0
- data/lib/locales/en/music.yml +464 -0
- data/lib/locales/en/myst.yml +104 -0
- data/lib/locales/en/name.yml +26 -0
- data/lib/locales/en/naruto.yml +230 -0
- data/lib/locales/en/nation.yml +11 -0
- data/lib/locales/en/nato_phonetic_alphabet.yml +4 -0
- data/lib/locales/en/new_girl.yml +40 -0
- data/lib/locales/en/one_piece.yml +9 -0
- data/lib/locales/en/opera.yml +340 -0
- data/lib/locales/en/overwatch.yml +2652 -0
- data/lib/locales/en/parks_and_rec.yml +7 -0
- data/lib/locales/en/pearl_jam.yml +213 -0
- data/lib/locales/en/phish.yml +395 -0
- data/lib/locales/en/phone_number.yml +7 -0
- data/lib/locales/en/pokemon.yml +421 -0
- data/lib/locales/en/prince.yml +227 -0
- data/lib/locales/en/princess_bride.yml +5 -0
- data/lib/locales/en/programming_language.yml +6 -0
- data/lib/locales/en/quote.yml +695 -0
- data/lib/locales/en/rajnikanth.yml +77 -0
- data/lib/locales/en/relationship.yml +10 -0
- data/lib/locales/en/restaurant.yml +129 -0
- data/lib/locales/en/rick_and_morty.yml +6 -0
- data/lib/locales/en/rock_band.yml +5 -0
- data/lib/locales/en/room.yml +68 -0
- data/lib/locales/en/rupaul.yml +125 -0
- data/lib/locales/en/rush.yml +32 -0
- data/lib/locales/en/science.yml +484 -0
- data/lib/locales/en/seinfeld.yml +6 -0
- data/lib/locales/en/shakespeare.yml +53 -0
- data/lib/locales/en/show.yml +597 -0
- data/lib/locales/en/silicon_valley.yml +53 -0
- data/lib/locales/en/simpsons.yml +694 -0
- data/lib/locales/en/slack_emoji.yml +20 -0
- data/lib/locales/en/sonic_the_hedgehog.yml +410 -0
- data/lib/locales/en/source.yml +51 -0
- data/lib/locales/en/south_park.yml +5 -0
- data/lib/locales/en/space.yml +17 -0
- data/lib/locales/en/spongebob.yml +489 -0
- data/lib/locales/en/sport.yml +130 -0
- data/lib/locales/en/star_trek.yml +7 -0
- data/lib/locales/en/star_wars.yml +606 -0
- data/lib/locales/en/stargate.yml +21 -0
- data/lib/locales/en/stranger_thing.yml +36 -0
- data/lib/locales/en/street_fighter.yml +1524 -0
- data/lib/locales/en/stripe.yml +42 -0
- data/lib/locales/en/studio_ghibli.yml +107 -0
- data/lib/locales/en/subscription.yml +8 -0
- data/lib/locales/en/suits.yml +45 -0
- data/lib/locales/en/super_mario.yml +58 -0
- data/lib/locales/en/super_smash_bros.yml +223 -0
- data/lib/locales/en/superhero.yml +12 -0
- data/lib/locales/en/supernatural.yml +141 -0
- data/lib/locales/en/sword_art_online.yml +334 -0
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en/tea.yml +172 -0
- data/lib/locales/en/team.yml +8 -0
- data/lib/locales/en/the_expanse.yml +7 -0
- data/lib/locales/en/the_it_crowd.yml +155 -0
- data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
- data/lib/locales/en/the_office.yml +86 -0
- data/lib/locales/en/the_thick_of_it.yml +6 -0
- data/lib/locales/en/tolkien.yml +2453 -0
- data/lib/locales/en/touhou.yml +839 -0
- data/lib/locales/en/tron.yml +227 -0
- data/lib/locales/en/twin_peaks.yml +6 -0
- data/lib/locales/en/umphreys_mcgee.yml +4 -0
- data/lib/locales/en/university.yml +10 -0
- data/lib/locales/en/v_for_vendetta.yml +163 -0
- data/lib/locales/en/vehicle.yml +2814 -0
- data/lib/locales/en/venture_bros.yml +7 -0
- data/lib/locales/en/verbs.yml +8 -0
- data/lib/locales/en/volleyball.yml +501 -0
- data/lib/locales/en/warhammer_fantasy.yml +582 -0
- data/lib/locales/en/witcher.yml +430 -0
- data/lib/locales/en/world_cup.yml +271 -0
- data/lib/locales/en/world_of_warcraft.yml +126 -0
- data/lib/locales/en/yoda.yml +4 -0
- data/lib/locales/en/zelda.yml +966 -0
- data/lib/locales/en-AU.yml +68 -0
- data/lib/locales/{en-bork.yml → en-BORK.yml} +1 -1
- data/lib/locales/en-CA.yml +40 -0
- data/lib/locales/{en-gb.yml → en-GB.yml} +5 -3
- data/lib/locales/{en-ind.yml → en-IND.yml} +10 -4
- data/lib/locales/en-MS.yml +49 -0
- data/lib/locales/en-NEP.yml +52 -0
- data/lib/locales/en-NG.yml +78 -0
- data/lib/locales/en-NZ.yml +166 -0
- data/lib/locales/en-PAK.yml +20 -0
- data/lib/locales/en-SG.yml +37 -0
- data/lib/locales/en-TH.yml +360 -0
- data/lib/locales/en-UG.yml +129 -0
- data/lib/locales/en-US.yml +129 -0
- data/lib/locales/en-ZA.yml +148 -0
- data/lib/locales/en-au-ocker.yml +36 -0
- data/lib/locales/en.yml +6 -67
- data/lib/locales/es-AR.yml +4601 -0
- data/lib/locales/es-MX.yml +105 -0
- data/lib/locales/es.yml +150 -0
- data/lib/locales/fa.yml +12 -0
- data/lib/locales/fi-FI.yml +37 -0
- data/lib/locales/fr/address.yml +20 -0
- data/lib/locales/fr/adjective.yml +266 -0
- data/lib/locales/fr/ancient.yml +141 -0
- data/lib/locales/fr/animal.yml +5 -0
- data/lib/locales/fr/appliance.yml +4 -0
- data/lib/locales/fr/book.yml +7 -0
- data/lib/locales/fr/color.yml +4 -0
- data/lib/locales/fr/company.yml +17 -0
- data/lib/locales/fr/compass.yml +23 -0
- data/lib/locales/fr/demographic.yml +4 -0
- data/lib/locales/fr/gender.yml +6 -0
- data/lib/locales/fr/internet.yml +5 -0
- data/lib/locales/fr/lorem.yml +5 -0
- data/lib/locales/fr/measurement.yml +7 -0
- data/lib/locales/fr/name.yml +21 -0
- data/lib/locales/fr/phone_number.yml +7 -0
- data/lib/locales/fr/pokemon.yml +7 -0
- data/lib/locales/fr-CA.yml +107 -0
- data/lib/locales/fr-CH.yml +78 -0
- data/lib/locales/fr.yml +1 -51
- data/lib/locales/he.yml +27 -0
- data/lib/locales/hy.yml +412 -0
- data/lib/locales/id.yml +26 -0
- data/lib/locales/it.yml +72 -0
- data/lib/locales/ja/README.md +13 -0
- data/lib/locales/ja/address.yml +120539 -0
- data/lib/locales/ja/adjective.yml +148 -0
- data/lib/locales/ja/ancient.yml +4 -0
- data/lib/locales/ja/animal.yml +5 -0
- data/lib/locales/ja/bank.yml +4 -0
- data/lib/locales/ja/book.yml +7 -0
- data/lib/locales/ja/cat.yml +5 -0
- data/lib/locales/ja/coffee.yml +4 -0
- data/lib/locales/ja/color.yml +4 -0
- data/lib/locales/ja/commerce.yml +11 -0
- data/lib/locales/ja/company.yml +8 -0
- data/lib/locales/ja/dog.yml +6 -0
- data/lib/locales/ja/emotion.yml +51 -0
- data/lib/locales/ja/food.yml +4 -0
- data/lib/locales/ja/gender.yml +4 -0
- data/lib/locales/ja/lorem.yml +9 -0
- data/lib/locales/ja/name.yml +13 -0
- data/lib/locales/ja/naruto.yml +230 -0
- data/lib/locales/ja/overwatch.yml +5 -0
- data/lib/locales/ja/phone_number.yml +7 -0
- data/lib/locales/ja/pokemon.yml +7 -0
- data/lib/locales/ja/relationship.yml +10 -0
- data/lib/locales/ja/restaurant.yml +11 -0
- data/lib/locales/ja/space.yml +5 -0
- data/lib/locales/ja/studio_ghibli.yml +112 -0
- data/lib/locales/ja/subscription.yml +8 -0
- data/lib/locales/ja/super_mario.yml +9 -0
- data/lib/locales/ja/super_smash_bros.yml +8 -0
- data/lib/locales/ja/university.yml +9 -0
- data/lib/locales/ja/zelda.yml +5 -0
- data/lib/locales/ko.yml +133 -0
- data/lib/locales/lt.yml +34 -0
- data/lib/locales/lv.yml +55 -0
- data/lib/locales/mi-NZ.yml +283 -0
- data/lib/locales/{no-nb.yml → nb-NO.yml} +21 -8
- data/lib/locales/nl.yml +46 -30
- data/lib/locales/no.yml +7 -0
- data/lib/locales/pl.yml +21 -10
- data/lib/locales/pt-BR.yml +726 -0
- data/lib/locales/{pt-br.yml → pt.yml} +26 -15
- data/lib/locales/ru.yml +118 -0
- data/lib/locales/sk.yml +81 -0
- data/lib/locales/sv.yml +82 -0
- data/lib/locales/th.yml +380 -0
- data/lib/locales/tr.yml +41 -0
- data/lib/locales/uk.yml +89 -0
- data/lib/locales/vi.yml +9 -3
- data/lib/locales/zh-CN.yml +57 -0
- data/lib/locales/zh-TW.yml +30 -0
- metadata +735 -97
- data/History.txt +0 -103
- data/lib/extensions/array.rb +0 -7
- data/lib/extensions/symbol.rb +0 -9
- data/lib/faker/address.rb +0 -49
- data/lib/faker/company.rb +0 -26
- data/lib/faker/internet.rb +0 -71
- data/lib/faker/lorem.rb +0 -59
- data/lib/faker/name.rb +0 -22
- data/lib/faker/phone_number.rb +0 -17
- data/lib/locales/de-ch.yml +0 -19
- data/lib/locales/en-au.yml +0 -22
- data/lib/locales/en-ca.yml +0 -14
- data/lib/locales/en-us.yml +0 -6
- data/test/test_faker.rb +0 -29
- data/test/test_faker_city.rb +0 -45
- data/test/test_faker_internet.rb +0 -56
- data/test/test_faker_lorem.rb +0 -69
- data/test/test_faker_name.rb +0 -20
- data/test/test_faker_street.rb +0 -44
- data/test/test_flexible.rb +0 -56
- data/test/test_helper.rb +0 -5
- data/test/test_locale.rb +0 -41
@@ -0,0 +1,112 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Finance < Base
|
5
|
+
CREDIT_CARD_TYPES = %i[visa mastercard discover american_express
|
6
|
+
diners_club jcb switch solo dankort
|
7
|
+
maestro forbrugsforeningen laser].freeze
|
8
|
+
|
9
|
+
MARKET_LIST = %i[nyse nasdaq].freeze
|
10
|
+
|
11
|
+
class << self
|
12
|
+
##
|
13
|
+
# Produces a random credit card number.
|
14
|
+
#
|
15
|
+
# @param types [String] Specific credit card type.
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @example
|
19
|
+
# Faker::Finance.credit_card #=> "3018-348979-1853"
|
20
|
+
# Faker::Finance.credit_card(:mastercard) #=> "6771-8921-2291-6236"
|
21
|
+
# Faker::Finance.credit_card(:mastercard, :visa) #=> "4448-8934-1277-7195"
|
22
|
+
#
|
23
|
+
# @faker.version 1.2.0
|
24
|
+
def credit_card(*types)
|
25
|
+
types = CREDIT_CARD_TYPES if types.empty?
|
26
|
+
type = sample(types)
|
27
|
+
template = numerify(fetch("finance.credit_card.#{type}"))
|
28
|
+
|
29
|
+
# calculate the luhn checksum digit
|
30
|
+
multiplier = 1
|
31
|
+
luhn_sum = template.gsub(/[^0-9]/, '').chars.reverse.map(&:to_i).inject(0) do |sum, digit|
|
32
|
+
multiplier = (multiplier == 2 ? 1 : 2)
|
33
|
+
sum + (digit * multiplier).to_s.chars.map(&:to_i).inject(0) { |digit_sum, cur| digit_sum + cur }
|
34
|
+
end
|
35
|
+
|
36
|
+
# the sum plus whatever the last digit is must be a multiple of 10. So, the
|
37
|
+
# last digit must be 10 - the last digit of the sum.
|
38
|
+
luhn_digit = (10 - (luhn_sum % 10)) % 10
|
39
|
+
|
40
|
+
template.gsub('L', luhn_digit.to_s)
|
41
|
+
end
|
42
|
+
|
43
|
+
##
|
44
|
+
# Produces a random vat number.
|
45
|
+
#
|
46
|
+
# @param country [String] Two capital letter country code to use for the vat number.
|
47
|
+
# @return [String]
|
48
|
+
#
|
49
|
+
# @example
|
50
|
+
# Faker::Finance.vat_number #=> "BR38.395.329/2471-83"
|
51
|
+
# Faker::Finance.vat_number('DE') #=> "DE593306671"
|
52
|
+
# Faker::Finance.vat_number('ZA') #=> "ZA79494416181"
|
53
|
+
#
|
54
|
+
# @faker.version 1.9.2
|
55
|
+
def vat_number(country: 'BR')
|
56
|
+
numerify(fetch("finance.vat_number.#{country}"))
|
57
|
+
rescue I18n::MissingTranslationData
|
58
|
+
raise ArgumentError, "Could not find vat number for #{country}"
|
59
|
+
end
|
60
|
+
|
61
|
+
def vat_number_keys
|
62
|
+
translate('faker.finance.vat_number').keys
|
63
|
+
end
|
64
|
+
|
65
|
+
##
|
66
|
+
# Returns a randomly-selected stock ticker from a specified market.
|
67
|
+
#
|
68
|
+
# @param markets [String] The name of the market to choose the ticker from (e.g. NYSE, NASDAQ)
|
69
|
+
# @return [String]
|
70
|
+
#
|
71
|
+
# @example
|
72
|
+
# Faker::Finance.ticker #=> 'AMZN'
|
73
|
+
# Faker::Finance.vat_number('NASDAQ') #=> 'GOOG'
|
74
|
+
#
|
75
|
+
# @faker.version next
|
76
|
+
def ticker(*markets)
|
77
|
+
markets = MARKET_LIST if markets.empty?
|
78
|
+
market = sample(markets)
|
79
|
+
fetch("finance.ticker.#{market}")
|
80
|
+
rescue I18n::MissingTranslationData
|
81
|
+
raise ArgumentError, "Could not find market named #{market}"
|
82
|
+
end
|
83
|
+
|
84
|
+
##
|
85
|
+
# Returns a randomly-selected stock market.
|
86
|
+
#
|
87
|
+
# @return [String]
|
88
|
+
#
|
89
|
+
# @example
|
90
|
+
# Faker::Finance.stock_market #=> 'NASDAQ'
|
91
|
+
#
|
92
|
+
# @faker.version next
|
93
|
+
def stock_market
|
94
|
+
fetch('finance.stock_market')
|
95
|
+
end
|
96
|
+
|
97
|
+
##
|
98
|
+
# Returns a random condominium fiscal code.
|
99
|
+
#
|
100
|
+
# @param country [String] Two capital letter country code to use for the vat number.
|
101
|
+
# @return [String]
|
102
|
+
#
|
103
|
+
# @example
|
104
|
+
# Faker::Finance.condominium_fiscal_code #=> "012345678"
|
105
|
+
#
|
106
|
+
# @faker.version next
|
107
|
+
def condominium_fiscal_code(country: 'IT')
|
108
|
+
numerify(fetch("finance.condominium_fiscal_code.#{country}"))
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|
@@ -0,0 +1,139 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Food < Base
|
5
|
+
flexible :food
|
6
|
+
|
7
|
+
class << self
|
8
|
+
##
|
9
|
+
# Retrieves an allergen.
|
10
|
+
#
|
11
|
+
# @return [String]
|
12
|
+
#
|
13
|
+
# @example
|
14
|
+
# Faker::Food.allergen #=> "Peanuts"
|
15
|
+
#
|
16
|
+
# @faker.version next
|
17
|
+
def allergen
|
18
|
+
fetch('food.allergens')
|
19
|
+
end
|
20
|
+
|
21
|
+
##
|
22
|
+
# Retrieves a typical dish from each country.
|
23
|
+
#
|
24
|
+
# @return [String]
|
25
|
+
#
|
26
|
+
# @example
|
27
|
+
# Faker::Food.dish #=> "Feijoada"
|
28
|
+
#
|
29
|
+
# @faker.version 1.8.0
|
30
|
+
def dish
|
31
|
+
fetch('food.dish')
|
32
|
+
end
|
33
|
+
|
34
|
+
##
|
35
|
+
# Retrieves a description about some dish
|
36
|
+
#
|
37
|
+
# @return [String]
|
38
|
+
#
|
39
|
+
# @example
|
40
|
+
# Faker::Food.description #=> "Breaded fried chicken with waffles. Served with maple syrup."
|
41
|
+
#
|
42
|
+
# @faker.version 1.9.0
|
43
|
+
def description
|
44
|
+
fetch('food.descriptions')
|
45
|
+
end
|
46
|
+
|
47
|
+
##
|
48
|
+
# Retrieves an ingredient
|
49
|
+
#
|
50
|
+
# @return [String]
|
51
|
+
#
|
52
|
+
# @example
|
53
|
+
# Faker::Food.ingredient #=> "Olives"
|
54
|
+
#
|
55
|
+
# @faker.version 1.7.0
|
56
|
+
def ingredient
|
57
|
+
fetch('food.ingredients')
|
58
|
+
end
|
59
|
+
|
60
|
+
##
|
61
|
+
# Retrieves a fruit
|
62
|
+
#
|
63
|
+
# @return [String]
|
64
|
+
#
|
65
|
+
# @example
|
66
|
+
# Faker::Food.fruits #=> "Papaya"
|
67
|
+
#
|
68
|
+
# @faker.version 1.9.0
|
69
|
+
def fruits
|
70
|
+
fetch('food.fruits')
|
71
|
+
end
|
72
|
+
|
73
|
+
##
|
74
|
+
# Retrieves a vegetable
|
75
|
+
#
|
76
|
+
# @return [String]
|
77
|
+
#
|
78
|
+
# @example
|
79
|
+
# Faker::Food.vegetables #=> "Broccolini"
|
80
|
+
#
|
81
|
+
# @faker.version 1.9.0
|
82
|
+
def vegetables
|
83
|
+
fetch('food.vegetables')
|
84
|
+
end
|
85
|
+
|
86
|
+
##
|
87
|
+
# Retrieves some random spice
|
88
|
+
#
|
89
|
+
# @return [String]
|
90
|
+
#
|
91
|
+
# @example
|
92
|
+
# Faker::Food.spice #=> "Garlic Chips"
|
93
|
+
#
|
94
|
+
# @faker.version 1.7.0
|
95
|
+
def spice
|
96
|
+
fetch('food.spices')
|
97
|
+
end
|
98
|
+
|
99
|
+
##
|
100
|
+
# Retrieves cooking measures
|
101
|
+
#
|
102
|
+
# @return [String]
|
103
|
+
#
|
104
|
+
# @example
|
105
|
+
# Faker::Food.measurement #=> "1/3"
|
106
|
+
#
|
107
|
+
# @faker.version 1.7.0
|
108
|
+
def measurement
|
109
|
+
"#{fetch('food.measurement_sizes')} #{fetch('food.measurements')}"
|
110
|
+
end
|
111
|
+
|
112
|
+
##
|
113
|
+
# Retrieves metric measurements
|
114
|
+
#
|
115
|
+
# @return [String]
|
116
|
+
#
|
117
|
+
# @example
|
118
|
+
# Faker::Food.metric_measurement #=> "centiliter"
|
119
|
+
#
|
120
|
+
# @faker.version 1.8.3
|
121
|
+
def metric_measurement
|
122
|
+
fetch('food.metric_measurements')
|
123
|
+
end
|
124
|
+
|
125
|
+
##
|
126
|
+
# Retrieves ethnic category
|
127
|
+
#
|
128
|
+
# @return [String]
|
129
|
+
#
|
130
|
+
# @example
|
131
|
+
# Faker::Food.ethnic_category #=> "Indian cuisine"
|
132
|
+
#
|
133
|
+
# @faker.version next
|
134
|
+
def ethnic_category
|
135
|
+
fetch('food.ethnic_category')
|
136
|
+
end
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class FunnyName < Base
|
5
|
+
flexible :funny_name
|
6
|
+
|
7
|
+
class << self
|
8
|
+
##
|
9
|
+
# Retrieves a funny name.
|
10
|
+
#
|
11
|
+
# @return [String]
|
12
|
+
#
|
13
|
+
# @example
|
14
|
+
# Faker::FunnyName.name #=> "Sam Pull"
|
15
|
+
#
|
16
|
+
# @faker.version 1.8.0
|
17
|
+
def name
|
18
|
+
fetch('funny_name.name')
|
19
|
+
end
|
20
|
+
|
21
|
+
##
|
22
|
+
# Retrieves a funny two word name.
|
23
|
+
#
|
24
|
+
# @return [String]
|
25
|
+
#
|
26
|
+
# @example
|
27
|
+
# Faker::FunnyName.two_word_name #=> "Shirley Knot"
|
28
|
+
#
|
29
|
+
# @faker.version 1.8.0
|
30
|
+
def two_word_name
|
31
|
+
two_word_names = fetch_all('funny_name.name').select do |name|
|
32
|
+
name.count(' ') == 1
|
33
|
+
end
|
34
|
+
|
35
|
+
sample(two_word_names)
|
36
|
+
end
|
37
|
+
|
38
|
+
##
|
39
|
+
# Retrieves a funny three word name.
|
40
|
+
#
|
41
|
+
# @return [String]
|
42
|
+
#
|
43
|
+
# @example
|
44
|
+
# Faker::FunnyName.three_word_name #=> "Carson O. Gin"
|
45
|
+
#
|
46
|
+
# @faker.version 1.8.0
|
47
|
+
def three_word_name
|
48
|
+
three_word_names = fetch_all('funny_name.name').select do |name|
|
49
|
+
name.count(' ') == 2
|
50
|
+
end
|
51
|
+
|
52
|
+
sample(three_word_names)
|
53
|
+
end
|
54
|
+
|
55
|
+
##
|
56
|
+
# Retrieves a funny four word name.
|
57
|
+
#
|
58
|
+
# @return [String]
|
59
|
+
#
|
60
|
+
# @example
|
61
|
+
# Faker::FunnyName.four_word_name #=> "Maude L. T. Ford"
|
62
|
+
#
|
63
|
+
# @faker.version 1.8.0
|
64
|
+
def four_word_name
|
65
|
+
four_word_names = fetch_all('funny_name.name').select do |name|
|
66
|
+
name.count(' ') == 3
|
67
|
+
end
|
68
|
+
|
69
|
+
sample(four_word_names)
|
70
|
+
end
|
71
|
+
|
72
|
+
##
|
73
|
+
# Retrieves a funny name with an initial.
|
74
|
+
#
|
75
|
+
# @return [String]
|
76
|
+
#
|
77
|
+
# @example
|
78
|
+
# Faker::FunnyName.name_with_initial #=> "Heather N. Yonn"
|
79
|
+
#
|
80
|
+
# @faker.version 1.8.0
|
81
|
+
def name_with_initial
|
82
|
+
names_with_initials = fetch_all('funny_name.name').select do |name|
|
83
|
+
name.count('.').positive?
|
84
|
+
end
|
85
|
+
|
86
|
+
sample(names_with_initials)
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Gender < Base
|
5
|
+
class << self
|
6
|
+
##
|
7
|
+
# Produces the name of a gender identity.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::Gender.type #=> "Non-binary"
|
13
|
+
#
|
14
|
+
# @faker.version 1.9.0
|
15
|
+
def type
|
16
|
+
fetch('gender.types')
|
17
|
+
end
|
18
|
+
|
19
|
+
##
|
20
|
+
# Produces either 'Male' or 'Female'.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::Gender.binary_type #=> "Female"
|
26
|
+
#
|
27
|
+
# @faker.version 1.9.0
|
28
|
+
def binary_type
|
29
|
+
fetch('gender.binary_types')
|
30
|
+
end
|
31
|
+
|
32
|
+
##
|
33
|
+
# Produces either 'f' or 'm'.
|
34
|
+
#
|
35
|
+
# @return [String]
|
36
|
+
#
|
37
|
+
# @example
|
38
|
+
# Faker::Gender.short_binary_type #=> "f"
|
39
|
+
#
|
40
|
+
# @faker.version 2.13.0
|
41
|
+
def short_binary_type
|
42
|
+
fetch('gender.short_binary_types')
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class GreekPhilosophers < Base
|
5
|
+
class << self
|
6
|
+
##
|
7
|
+
# Produces the name of a Greek philosopher.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::GreekPhilosophers.name #=> "Socrates"
|
13
|
+
#
|
14
|
+
# @faker.version 1.9.0
|
15
|
+
def name
|
16
|
+
fetch('greek_philosophers.names')
|
17
|
+
end
|
18
|
+
|
19
|
+
##
|
20
|
+
# Produces a quote from a Greek philosopher.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
#
|
24
|
+
# @example
|
25
|
+
# Faker::GreekPhilosophers.quote #=> "Only the educated are free."
|
26
|
+
#
|
27
|
+
# @faker.version 1.9.0
|
28
|
+
def quote
|
29
|
+
fetch('greek_philosophers.quotes')
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,103 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
# Port of http://shinytoylabs.com/jargon/
|
5
|
+
# Are you having trouble writing tech-savvy dialogue for your latest screenplay?
|
6
|
+
# Worry not! Hollywood-grade technical talk is ready to fill out any form where you need to look smart.
|
7
|
+
class Hacker < Base
|
8
|
+
flexible :hacker
|
9
|
+
|
10
|
+
class << self
|
11
|
+
##
|
12
|
+
# Produces something smart.
|
13
|
+
#
|
14
|
+
# @return [String]
|
15
|
+
#
|
16
|
+
# @example
|
17
|
+
# Faker::Hacker.say_something_smart
|
18
|
+
# #=> "Try to compress the SQL interface, maybe it will program the back-end hard drive!"
|
19
|
+
#
|
20
|
+
# @faker.version 1.4.0
|
21
|
+
def say_something_smart
|
22
|
+
sample(phrases)
|
23
|
+
end
|
24
|
+
|
25
|
+
##
|
26
|
+
# Short technical abbreviations.
|
27
|
+
#
|
28
|
+
# @return [String]
|
29
|
+
#
|
30
|
+
# @example
|
31
|
+
# Faker::Hacker.abbreviation #=> "RAM"
|
32
|
+
#
|
33
|
+
# @faker.version 1.4.0
|
34
|
+
def abbreviation
|
35
|
+
fetch('hacker.abbreviation')
|
36
|
+
end
|
37
|
+
|
38
|
+
##
|
39
|
+
# Hacker-centric adjectives.
|
40
|
+
#
|
41
|
+
# @return [String]
|
42
|
+
#
|
43
|
+
# @example
|
44
|
+
# Faker::Hacker.adjective #=> "open-source"
|
45
|
+
#
|
46
|
+
# @faker.version 1.4.0
|
47
|
+
def adjective
|
48
|
+
fetch('hacker.adjective')
|
49
|
+
end
|
50
|
+
|
51
|
+
##
|
52
|
+
# Only the best hacker-related nouns.
|
53
|
+
#
|
54
|
+
# @return [String]
|
55
|
+
#
|
56
|
+
# @example
|
57
|
+
# Faker::Hacker.noun #=> "bandwidth"
|
58
|
+
#
|
59
|
+
# @faker.version 1.4.0
|
60
|
+
def noun
|
61
|
+
fetch('hacker.noun')
|
62
|
+
end
|
63
|
+
|
64
|
+
##
|
65
|
+
# Actions that hackers take.
|
66
|
+
#
|
67
|
+
# @return [String]
|
68
|
+
#
|
69
|
+
# @example
|
70
|
+
# Faker::Hacker.verb #=> "bypass"
|
71
|
+
#
|
72
|
+
# @faker.version 1.4.0
|
73
|
+
def verb
|
74
|
+
fetch('hacker.verb')
|
75
|
+
end
|
76
|
+
|
77
|
+
##
|
78
|
+
# Produces a verb that ends with '-ing'.
|
79
|
+
#
|
80
|
+
# @return [String]
|
81
|
+
#
|
82
|
+
# @example
|
83
|
+
# Faker::Hacker.ingverb #=> "synthesizing"
|
84
|
+
#
|
85
|
+
# @faker.version 1.4.0
|
86
|
+
def ingverb
|
87
|
+
fetch('hacker.ingverb')
|
88
|
+
end
|
89
|
+
|
90
|
+
# @private
|
91
|
+
def phrases
|
92
|
+
["If we #{verb} the #{noun}, we can get to the #{abbreviation} #{noun} through the #{adjective} #{abbreviation} #{noun}!",
|
93
|
+
"We need to #{verb} the #{adjective} #{abbreviation} #{noun}!",
|
94
|
+
"Try to #{verb} the #{abbreviation} #{noun}, maybe it will #{verb} the #{adjective} #{noun}!",
|
95
|
+
"You can't #{verb} the #{noun} without #{ingverb} the #{adjective} #{abbreviation} #{noun}!",
|
96
|
+
"Use the #{adjective} #{abbreviation} #{noun}, then you can #{verb} the #{adjective} #{noun}!",
|
97
|
+
"The #{abbreviation} #{noun} is down, #{verb} the #{adjective} #{noun} so we can #{verb} the #{abbreviation} #{noun}!",
|
98
|
+
"#{ingverb} the #{noun} won't do anything, we need to #{verb} the #{adjective} #{abbreviation} #{noun}!".capitalize,
|
99
|
+
"I'll #{verb} the #{adjective} #{abbreviation} #{noun}, that should #{noun} the #{abbreviation} #{noun}!"]
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
@@ -0,0 +1,155 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Hipster < Base
|
5
|
+
class << self
|
6
|
+
##
|
7
|
+
# Produces a random hipster word.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# Faker::Hipster.word #=> "irony"
|
13
|
+
#
|
14
|
+
# @faker.version 1.6.0
|
15
|
+
def word
|
16
|
+
random_word = sample(translate('faker.hipster.words'))
|
17
|
+
random_word =~ /\s/ ? word : random_word
|
18
|
+
end
|
19
|
+
|
20
|
+
##
|
21
|
+
# Produces a random hipster word.
|
22
|
+
#
|
23
|
+
# @param number [Integer] Specifies the number of words returned
|
24
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
25
|
+
# @param spaces_allowed [Boolean] Specifies if the words may contain spaces
|
26
|
+
# @return [Array<String>]
|
27
|
+
#
|
28
|
+
# @example
|
29
|
+
# Faker::Hipster.words #=> ["pug", "pitchfork", "chia"]
|
30
|
+
# Faker::Hipster.words(number: 4) #=> ["ugh", "cardigan", "poutine", "stumptown"]
|
31
|
+
# Faker::Hipster.words(number: 4, supplemental: true) #=> ["iste", "seitan", "normcore", "provident"]
|
32
|
+
# Faker::Hipster.words(number: 4, supplemental: true, spaces_allowed: true) #=> ["qui", "magni", "craft beer", "est"]
|
33
|
+
#
|
34
|
+
# @faker.version 1.6.0
|
35
|
+
def words(number: 3, supplemental: false, spaces_allowed: false)
|
36
|
+
resolved_num = resolve(number)
|
37
|
+
word_list = (
|
38
|
+
translate('faker.hipster.words') +
|
39
|
+
(supplemental ? translate('faker.lorem.words') : [])
|
40
|
+
)
|
41
|
+
word_list *= ((resolved_num / word_list.length) + 1)
|
42
|
+
|
43
|
+
return shuffle(word_list)[0, resolved_num] if spaces_allowed
|
44
|
+
|
45
|
+
words = shuffle(word_list)[0, resolved_num]
|
46
|
+
words.each_with_index { |w, i| words[i] = word if w =~ /\s/ }
|
47
|
+
end
|
48
|
+
|
49
|
+
##
|
50
|
+
# Produces a random hipster sentence.
|
51
|
+
#
|
52
|
+
# @param word_count [Integer] Specifies the number of words in the sentence
|
53
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
54
|
+
# @param random_words_to_add [Integer] Specifies the number of random words to add
|
55
|
+
# @param open_compounds_allowed [Boolean] Specifies if the generated sentence can contain words having additional spaces
|
56
|
+
# @return [String]
|
57
|
+
#
|
58
|
+
# @example
|
59
|
+
# Faker::Hipster.sentence #=> "Park iphone leggings put a bird on it."
|
60
|
+
# Faker::Hipster.sentence(word_count: 3) #=> "Pour-over swag godard."
|
61
|
+
# Faker::Hipster.sentence(word_count: 3, supplemental: true) #=> "Beard laboriosam sequi celiac."
|
62
|
+
# Faker::Hipster.sentence(word_count: 3, supplemental: false, random_words_to_add: 4) #=> "Bitters retro mustache aesthetic biodiesel 8-bit."
|
63
|
+
# Faker::Hipster.sentence(word_count: 3, supplemental: true, random_words_to_add: 4) #=> "Occaecati deleniti messenger bag meh crucifix autem."
|
64
|
+
# Faker::Hipster.sentence(word_count: 3, supplemental: true, random_words_to_add: 0, open_compounds_allowed: true) #=> "Kale chips nihil eos."
|
65
|
+
# Faker::Hipster.sentence(word_count: 3, supplemental: true, random_words_to_add: 0, open_compounds_allowed: false) #=> "Dreamcatcher umami fixie."
|
66
|
+
#
|
67
|
+
# @faker.version 1.6.0
|
68
|
+
def sentence(word_count: 4, supplemental: false, random_words_to_add: 6, open_compounds_allowed: true)
|
69
|
+
"#{words(number: word_count + rand(random_words_to_add.to_i).to_i, supplemental: supplemental, spaces_allowed: open_compounds_allowed).join(' ').capitalize}."
|
70
|
+
end
|
71
|
+
|
72
|
+
##
|
73
|
+
# Produces random hipster sentences.
|
74
|
+
#
|
75
|
+
# @param number [Integer] Specifies the number of sentences returned
|
76
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
77
|
+
# @return [Array<String>]
|
78
|
+
#
|
79
|
+
# @example
|
80
|
+
# Faker::Hipster.sentences #=> ["Godard pitchfork vinegar chillwave everyday 90's whatever.", "Pour-over artisan distillery street waistcoat.", "Salvia yr leggings franzen blue bottle."]
|
81
|
+
# Faker::Hipster.sentences(number: 1) #=> ["Before they sold out pinterest venmo umami try-hard ugh hoodie artisan."]
|
82
|
+
# Faker::Hipster.sentences(number: 1, supplemental: true) #=> ["Et sustainable optio aesthetic et."]
|
83
|
+
#
|
84
|
+
# @faker.version 1.6.0
|
85
|
+
def sentences(number: 3, supplemental: false)
|
86
|
+
[].tap do |sentences|
|
87
|
+
1.upto(resolve(number)) do
|
88
|
+
sentences << sentence(word_count: 3, supplemental: supplemental)
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
##
|
94
|
+
# Produces a random hipster paragraph.
|
95
|
+
#
|
96
|
+
# @param sentence_count [Integer] Specifies the number of sentences in the paragraph
|
97
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
98
|
+
# @param random_sentences_to_add [Boolean] Specifies the number of random sentences to add
|
99
|
+
# @return [String]
|
100
|
+
#
|
101
|
+
# @example
|
102
|
+
# Faker::Hipster.paragraph #=> "Migas fingerstache pbr&b tofu. Polaroid distillery typewriter echo tofu actually. Slow-carb fanny pack pickled direct trade scenester mlkshk plaid. Banjo venmo chambray cold-pressed typewriter. Fap skateboard intelligentsia."
|
103
|
+
# Faker::Hipster.paragraph(sentence_count: 2) #=> "Yolo tilde farm-to-table hashtag. Lomo kitsch disrupt forage +1."
|
104
|
+
# Faker::Hipster.paragraph(sentence_count: 2, supplemental: true) #=> "Typewriter iste ut viral kombucha voluptatem. Sint voluptates saepe. Direct trade irony chia excepturi yuccie. Biodiesel esse listicle et quam suscipit."
|
105
|
+
# Faker::Hipster.paragraph(sentence_count: 2, supplemental: false, random_sentences_to_add: 4) #=> "Selvage vhs chartreuse narwhal vinegar. Authentic vinyl truffaut carry vhs pop-up. Hammock everyday iphone locavore thundercats bitters vegan goth. Fashion axe banh mi shoreditch whatever artisan."
|
106
|
+
# Faker::Hipster.paragraph(sentence_count: 2, supplemental: true, random_sentences_to_add: 4) #=> "Deep v gluten-free unde waistcoat aperiam migas voluptas dolorum. Aut drinking illo sustainable sapiente. Direct trade fanny pack kale chips ennui semiotics."
|
107
|
+
#
|
108
|
+
# @faker.version 1.6.0
|
109
|
+
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 3)
|
110
|
+
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i).to_i, supplemental: supplemental).join(' ')
|
111
|
+
end
|
112
|
+
|
113
|
+
##
|
114
|
+
# Produces random hipster paragraphs.
|
115
|
+
#
|
116
|
+
# @param number [Integer] Specifies the number of paragraphs
|
117
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
118
|
+
# @return [Array<String>]
|
119
|
+
#
|
120
|
+
# @example
|
121
|
+
# Faker::Hipster.paragraphs #=> ["Tilde microdosing blog cliche meggings. Intelligentsia five dollar toast forage yuccie. Master kitsch knausgaard. Try-hard everyday trust fund mumblecore.", "Normcore viral pickled. Listicle humblebrag swag tote bag. Taxidermy street hammock neutra butcher cred kale chips. Blog portland humblebrag trust fund irony.", "Single-origin coffee fixie cleanse tofu xoxo. Post-ironic tote bag ramps gluten-free locavore mumblecore hammock. Umami loko twee. Ugh kitsch before they sold out."]
|
122
|
+
# Faker::Hipster.paragraphs(number: 1) #=> ["Skateboard cronut synth +1 fashion axe. Pop-up polaroid skateboard asymmetrical. Ennui fingerstache shoreditch before they sold out. Tattooed pitchfork ramps. Photo booth yr messenger bag raw denim bespoke locavore lomo synth."]
|
123
|
+
# Faker::Hipster.paragraphs(number: 1, supplemental: true) #=> ["Quae direct trade pbr&b quo taxidermy autem loko. Umami quas ratione migas cardigan sriracha minima. Tenetur perspiciatis pickled sed eum doloribus truffaut. Excepturi dreamcatcher meditation."]
|
124
|
+
#
|
125
|
+
# @faker.version 1.6.0
|
126
|
+
def paragraphs(number: 3, supplemental: false)
|
127
|
+
[].tap do |paragraphs|
|
128
|
+
1.upto(resolve(number)) do
|
129
|
+
paragraphs << paragraph(sentence_count: 3, supplemental: supplemental)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
##
|
135
|
+
# Produces a random hipster paragraph by characters.
|
136
|
+
#
|
137
|
+
# @param characters [Integer] Specifies the number of characters in the paragraph
|
138
|
+
# @param supplemental [Boolean] Specifies if the words are supplemental
|
139
|
+
# @return [String]
|
140
|
+
#
|
141
|
+
# @example
|
142
|
+
# Faker::Hipster.paragraph_by_chars #=> "Truffaut stumptown trust fund 8-bit messenger bag portland. Meh kombucha selvage swag biodiesel. Lomo kinfolk jean shorts asymmetrical diy. Wayfarers portland twee stumptown. Wes anderson biodiesel retro 90's pabst. Diy echo 90's mixtape semiotics. Cornho."
|
143
|
+
# Faker::Hipster.paragraph_by_chars(characters: 256, supplemental: false) #=> "Hella kogi blog narwhal sartorial selfies mustache schlitz. Bespoke normcore kitsch cred hella fixie. Park aesthetic fixie migas twee. Cliche mustache brunch tumblr fixie godard. Drinking pop-up synth hoodie dreamcatcher typewriter. Kitsch biodiesel green."
|
144
|
+
#
|
145
|
+
# @faker.version 1.6.0
|
146
|
+
def paragraph_by_chars(characters: 256, supplemental: false)
|
147
|
+
paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
|
148
|
+
|
149
|
+
paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < characters
|
150
|
+
|
151
|
+
"#{paragraph[0...characters - 1]}."
|
152
|
+
end
|
153
|
+
end
|
154
|
+
end
|
155
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Faker
|
4
|
+
class Hobby < Base
|
5
|
+
flexible :hobby
|
6
|
+
|
7
|
+
class << self
|
8
|
+
##
|
9
|
+
# Retrieves a typical hobby activity.
|
10
|
+
#
|
11
|
+
# @return [String]
|
12
|
+
#
|
13
|
+
# @example
|
14
|
+
# Faker::Hobby.activity #=> "Cooking"
|
15
|
+
#
|
16
|
+
# @faker.version next
|
17
|
+
def activity
|
18
|
+
fetch('hobby.activity')
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|