faker 2.13.0 → 3.8.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1277 -24
- data/README.md +138 -320
- data/lib/faker/blockchain/aeternity.rb +5 -5
- data/lib/faker/blockchain/bitcoin.rb +1 -2
- data/lib/faker/blockchain/ethereum.rb +1 -1
- data/lib/faker/blockchain/tezos.rb +30 -3
- data/lib/faker/blockchain.rb +9 -0
- data/lib/faker/books/dune.rb +17 -12
- data/lib/faker/books/lovecraft.rb +16 -44
- data/lib/faker/books/the_kingkiller_chronicle.rb +61 -0
- data/lib/faker/books.rb +9 -0
- data/lib/faker/creature/bird.rb +203 -0
- data/lib/faker/creature.rb +9 -0
- data/lib/faker/default/address.rb +11 -31
- data/lib/faker/default/adjective.rb +35 -0
- data/lib/faker/default/alphanumeric.rb +3 -9
- data/lib/faker/default/app.rb +1 -10
- data/lib/faker/default/avatar.rb +2 -13
- data/lib/faker/default/bank.rb +28 -26
- data/lib/faker/default/barcode.rb +165 -0
- data/lib/faker/default/beer.rb +3 -3
- data/lib/faker/default/boolean.rb +2 -4
- data/lib/faker/default/camera.rb +46 -0
- data/lib/faker/default/cannabis.rb +10 -0
- data/lib/faker/default/chile_rut.rb +28 -27
- data/lib/faker/default/chuck_norris.rb +1 -0
- data/lib/faker/default/code.rb +166 -52
- data/lib/faker/default/color.rb +77 -6
- data/lib/faker/default/commerce.rb +32 -18
- data/lib/faker/default/company.rb +175 -30
- data/lib/faker/default/crypto.rb +25 -5
- data/lib/faker/default/crypto_coin.rb +3 -15
- data/lib/faker/default/date.rb +65 -42
- data/lib/faker/default/demographic.rb +1 -5
- data/lib/faker/default/driving_licence.rb +45 -20
- data/lib/faker/default/drone.rb +332 -0
- data/lib/faker/default/educator.rb +13 -0
- data/lib/faker/default/emotion.rb +33 -0
- data/lib/faker/default/file.rb +5 -22
- data/lib/faker/default/finance.rb +51 -7
- data/lib/faker/default/food.rb +28 -2
- data/lib/faker/default/hipster.rb +15 -52
- data/lib/faker/default/hobby.rb +22 -0
- data/lib/faker/default/html.rb +230 -0
- data/lib/faker/default/id_number.rb +176 -31
- data/lib/faker/default/invoice.rb +8 -21
- data/lib/faker/default/json.rb +15 -27
- data/lib/faker/default/lorem.rb +179 -77
- data/lib/faker/default/lorem_flickr.rb +5 -38
- data/lib/faker/default/markdown.rb +14 -17
- data/lib/faker/default/marketing.rb +1 -1
- data/lib/faker/default/measurement.rb +19 -50
- data/lib/faker/default/military.rb +26 -0
- data/lib/faker/default/mountain.rb +33 -0
- data/lib/faker/default/name.rb +1 -5
- data/lib/faker/default/nation.rb +0 -3
- data/lib/faker/default/{nhs.rb → national_health_service.rb} +10 -10
- data/lib/faker/default/number.rb +34 -62
- data/lib/faker/default/omniauth.rb +102 -97
- data/lib/faker/default/phone_number.rb +36 -21
- data/lib/faker/default/placeholdit.rb +12 -22
- data/lib/faker/{quotes → default}/quote.rb +39 -0
- data/lib/faker/default/relationship.rb +2 -6
- data/lib/faker/default/science.rb +108 -0
- data/lib/faker/default/source.rb +3 -16
- data/lib/faker/default/south_africa.rb +3 -3
- data/lib/faker/default/space.rb +1 -1
- data/lib/faker/default/sport.rb +116 -0
- data/lib/faker/default/string.rb +2 -8
- data/lib/faker/default/stripe.rb +7 -23
- data/lib/faker/default/tea.rb +41 -0
- data/lib/faker/{music/show.rb → default/theater.rb} +8 -8
- data/lib/faker/default/time.rb +4 -34
- data/lib/faker/default/types.rb +14 -36
- data/lib/faker/default/vehicle.rb +45 -55
- data/lib/faker/default/vulnerability_identifier.rb +23 -0
- data/lib/faker/default/world_cup.rb +2 -11
- data/lib/faker/default/x.rb +189 -0
- data/lib/faker/default.rb +9 -0
- data/lib/faker/fantasy/tolkien.rb +67 -0
- data/lib/faker/fantasy.rb +9 -0
- data/lib/faker/games/clash_of_clans.rb +48 -0
- data/lib/faker/games/control.rb +1 -1
- data/lib/faker/games/dnd.rb +131 -14
- data/lib/faker/games/dota.rb +14 -5
- data/lib/faker/games/elder_scrolls.rb +26 -0
- data/lib/faker/games/final_fantasy_xiv.rb +73 -0
- data/lib/faker/games/heroes.rb +13 -0
- data/lib/faker/games/heroes_of_the_storm.rb +0 -11
- data/lib/faker/games/minecraft.rb +66 -1
- data/lib/faker/games/myst.rb +1 -1
- data/lib/faker/games/street_fighter.rb +61 -0
- data/lib/faker/games/super_mario.rb +48 -0
- data/lib/faker/games/tarkov.rb +205 -0
- data/lib/faker/games/touhou.rb +75 -0
- data/lib/faker/games/witcher.rb +39 -0
- data/lib/faker/games/world_of_warcraft.rb +26 -1
- data/lib/faker/games.rb +9 -0
- data/lib/faker/internet.rb +582 -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 +26 -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 +1 -1
- data/lib/faker/japanese_media/studio_ghibli.rb +48 -0
- data/lib/faker/japanese_media.rb +9 -0
- data/lib/faker/locations/australia.rb +49 -0
- data/lib/faker/locations.rb +9 -0
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/movies/hackers.rb +48 -0
- data/lib/faker/movies/hobbit.rb +4 -4
- data/lib/faker/movies/how_to_train_your_dragon.rb +48 -0
- data/lib/faker/movies/lord_of_the_rings.rb +3 -3
- data/lib/faker/movies/star_wars.rb +75 -7
- data/lib/faker/movies/the_room.rb +63 -0
- data/lib/faker/movies/tron.rb +161 -0
- data/lib/faker/movies.rb +9 -0
- data/lib/faker/music/bossa_nova.rb +35 -0
- data/lib/faker/music/grateful_dead.rb +0 -2
- data/lib/faker/music/hiphop.rb +48 -0
- data/lib/faker/music/opera.rb +237 -1
- data/lib/faker/music/pearl_jam.rb +0 -2
- data/lib/faker/music/rock_band.rb +12 -0
- data/lib/faker/music/rush.rb +0 -2
- data/lib/faker/music/smashing_pumpkins.rb +62 -0
- data/lib/faker/{music/music.rb → music.rb} +16 -0
- data/lib/faker/quotes/rajnikanth.rb +1 -0
- data/lib/faker/quotes/shakespeare.rb +34 -0
- data/lib/faker/quotes.rb +9 -0
- data/lib/faker/religion/bible.rb +50 -0
- data/lib/faker/religion.rb +9 -0
- data/lib/faker/sports/chess.rb +90 -0
- data/lib/faker/sports/mountaineering.rb +22 -0
- data/lib/faker/sports/volleyball.rb +74 -0
- data/lib/faker/sports.rb +9 -0
- data/lib/faker/travel/airport.rb +43 -0
- data/lib/faker/travel/train_station.rb +54 -0
- data/lib/faker/travel.rb +9 -0
- data/lib/faker/tv_shows/archer.rb +51 -0
- data/lib/faker/tv_shows/big_bang_theory.rb +1 -1
- data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
- data/lib/faker/tv_shows/buffy.rb +5 -5
- data/lib/faker/tv_shows/dr_who.rb +0 -13
- data/lib/faker/tv_shows/final_space.rb +51 -0
- data/lib/faker/tv_shows/michael_scott.rb +0 -3
- data/lib/faker/tv_shows/south_park.rb +15 -0
- data/lib/faker/tv_shows/spongebob.rb +50 -0
- data/lib/faker/tv_shows/suits.rb +1 -1
- data/lib/faker/tv_shows/supernatural.rb +48 -0
- data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +5 -5
- data/lib/faker/tv_shows/the_office.rb +37 -0
- data/lib/faker/tv_shows.rb +9 -0
- data/lib/faker/version.rb +2 -2
- data/lib/faker.rb +96 -79
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/deprecator.rb +118 -0
- data/lib/helpers/positional_generator.rb +478 -0
- data/lib/helpers/unique_generator.rb +14 -14
- data/lib/locales/README.md +18 -2
- data/lib/locales/ar.yml +1608 -46
- data/lib/locales/bg.yml +935 -19
- data/lib/locales/ca-CAT.yml +347 -12
- data/lib/locales/ca.yml +580 -7
- data/lib/locales/da-DK.yml +529 -35
- data/lib/locales/de-AT.yml +3487 -25
- data/lib/locales/de-CH.yml +4359 -10
- data/lib/locales/de.yml +7185 -97
- data/lib/locales/ee.yml +1185 -27
- data/lib/locales/en/address.yml +1826 -562
- data/lib/locales/en/adjective.yml +179 -0
- data/lib/locales/en/airport.yml +381 -0
- data/lib/locales/en/ancient.yml +128 -4
- data/lib/locales/en/animal.yml +141 -2
- data/lib/locales/en/app.yml +89 -2
- data/lib/locales/en/appliance.yml +81 -2
- data/lib/locales/en/aqua_teen_hunger_force.yml +31 -31
- data/lib/locales/en/archer.yml +75 -0
- data/lib/locales/en/artist.yml +43 -1
- data/lib/locales/en/australia.yml +108 -0
- data/lib/locales/en/avatar.yml +57 -0
- data/lib/locales/en/back_to_the_future.yml +145 -117
- data/lib/locales/en/bank.yml +92 -3
- data/lib/locales/en/barcode.yml +24 -0
- data/lib/locales/en/beer.yml +232 -6
- data/lib/locales/en/bible.yml +87 -0
- data/lib/locales/en/big_bang_theory.yml +34 -35
- data/lib/locales/en/bird.yml +1280 -0
- data/lib/locales/en/bojack_horseman.yml +63 -3
- data/lib/locales/en/book.yml +486 -3
- data/lib/locales/en/bossa_nova.yml +110 -3
- data/lib/locales/en/breaking_bad.yml +110 -25
- data/lib/locales/en/brooklyn_nine_nine.yml +34 -0
- data/lib/locales/en/buffy.yml +239 -257
- data/lib/locales/en/business.yml +18 -2
- data/lib/locales/en/camera.yml +611 -0
- data/lib/locales/en/cannabis.yml +344 -10
- data/lib/locales/en/cat.yml +155 -3
- data/lib/locales/en/chess.yml +102 -0
- data/lib/locales/en/chiquito.yml +60 -61
- data/lib/locales/en/chuck_norris.yml +78 -79
- data/lib/locales/en/clash_of_clan.yml +99 -0
- data/lib/locales/en/code.yml +501 -1
- data/lib/locales/en/coffee.yml +450 -25
- data/lib/locales/en/color.yml +73 -1
- data/lib/locales/en/commerce.yml +117 -6
- data/lib/locales/en/community.yml +55 -30
- data/lib/locales/en/company.yml +1756 -13
- data/lib/locales/en/compass.yml +108 -12
- data/lib/locales/en/computer.yml +23 -4
- data/lib/locales/en/conan.yml +169 -0
- data/lib/locales/en/construction.yml +416 -422
- data/lib/locales/en/cosmere.yml +219 -54
- data/lib/locales/en/cowboy_bebop.yml +160 -0
- data/lib/locales/en/culture_series.yml +298 -298
- data/lib/locales/en/currency.yml +358 -3
- data/lib/locales/en/dc_comics.yml +178 -49
- data/lib/locales/en/demographic.yml +218 -5
- data/lib/locales/en/departed.yml +40 -44
- data/lib/locales/en/dessert.yml +78 -3
- data/lib/locales/en/device.yml +112 -4
- data/lib/locales/en/dnd.yml +615 -33
- data/lib/locales/en/dog.yml +262 -7
- data/lib/locales/en/doraemon.yml +284 -0
- data/lib/locales/en/dota.yml +704 -63
- data/lib/locales/en/dr_who.yml +468 -93
- data/lib/locales/en/dragon_ball.yml +243 -1
- 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 +72 -56
- data/lib/locales/en/dune.yml +270 -131
- data/lib/locales/en/educator.yml +6 -0
- data/lib/locales/en/elder_scrolls.yml +582 -9
- data/lib/locales/en/electrical_components.yml +49 -3
- data/lib/locales/en/emotion.yml +480 -0
- data/lib/locales/en/esport.yml +58 -5
- data/lib/locales/en/fallout.yml +311 -133
- data/lib/locales/en/family_guy.yml +54 -4
- data/lib/locales/en/file.yml +109 -2
- data/lib/locales/en/final_fantasy_xiv.yml +754 -0
- data/lib/locales/en/final_space.yml +35 -0
- data/lib/locales/en/finance.yml +80 -4
- data/lib/locales/en/food.yml +1067 -10
- data/lib/locales/en/football.yml +121 -5
- data/lib/locales/en/fresh_prince_of_bel_air.yml +119 -70
- data/lib/locales/en/friends.yml +162 -3
- data/lib/locales/en/fullmetal_alchemist_brotherhood.yml +78 -0
- data/lib/locales/en/funny_name.yml +752 -1
- data/lib/locales/en/futurama.yml +7 -15
- data/lib/locales/en/game.yml +11 -0
- data/lib/locales/en/game_of_thrones.yml +2487 -5
- data/lib/locales/en/gender.yml +15 -3
- data/lib/locales/en/ghostbusters.yml +101 -88
- data/lib/locales/en/grateful_dead.yml +47 -45
- data/lib/locales/en/greek_philosophers.yml +44 -23
- data/lib/locales/en/hacker.yml +110 -5
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/half_life.yml +84 -3
- data/lib/locales/en/harry_potter.yml +323 -6
- data/lib/locales/en/heroes.yml +408 -3
- data/lib/locales/en/heroes_of_the_storm.yml +131 -4
- data/lib/locales/en/hey_arnold.yml +104 -21
- data/lib/locales/en/hipster.yml +203 -1
- data/lib/locales/en/hitchhikers_guide_to_the_galaxy.yml +243 -42
- data/lib/locales/en/hobby.yml +170 -0
- data/lib/locales/en/horse.yml +446 -2
- data/lib/locales/en/house.yml +34 -2
- data/lib/locales/en/how_i_met_your_mother.yml +97 -25
- data/lib/locales/en/how_to_train_your_dragon.yml +173 -0
- data/lib/locales/en/id_number.yml +7 -2
- data/lib/locales/en/industry_segments.yml +188 -4
- data/lib/locales/en/internet.yml +136 -3
- data/lib/locales/en/jack_handey.yml +54 -0
- data/lib/locales/en/job.yml +98 -7
- data/lib/locales/en/kamen_rider.yml +718 -0
- data/lib/locales/en/kpop.yml +954 -80
- data/lib/locales/en/league_of_legends.yml +285 -6
- data/lib/locales/en/lebowski.yml +58 -40
- data/lib/locales/en/lorem.yml +1095 -6
- data/lib/locales/en/lovecraft.yml +76 -6
- data/lib/locales/en/markdown.yml +12 -2
- data/lib/locales/en/marketing.yml +54 -1
- data/lib/locales/en/measurement.yml +42 -8
- data/lib/locales/en/michael_scott.yml +41 -42
- data/lib/locales/en/military.yml +179 -5
- data/lib/locales/en/minecraft.yml +273 -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 +188 -175
- data/lib/locales/en/music.yml +461 -29
- data/lib/locales/en/myst.yml +87 -31
- data/lib/locales/en/name.yml +6068 -6
- data/lib/locales/en/naruto.yml +230 -0
- data/lib/locales/en/nato_phonetic_alphabet.yml +27 -1
- data/lib/locales/en/new_girl.yml +35 -37
- data/lib/locales/en/one_piece.yml +359 -6
- data/lib/locales/en/opera.yml +169 -1
- data/lib/locales/en/overwatch.yml +2648 -2622
- data/lib/locales/en/parks_and_rec.yml +33 -4
- data/lib/locales/en/pearl_jam.yml +207 -207
- data/lib/locales/en/phish.yml +388 -389
- data/lib/locales/en/phone_number.yml +78 -3
- data/lib/locales/en/pokemon.yml +417 -4
- data/lib/locales/en/prince.yml +219 -219
- data/lib/locales/en/princess_bride.yml +48 -2
- data/lib/locales/en/programming_language.yml +753 -3
- data/lib/locales/en/quote.yml +606 -163
- data/lib/locales/en/rajnikanth.yml +74 -74
- data/lib/locales/en/relationship.yml +29 -6
- data/lib/locales/en/restaurant.yml +31 -31
- data/lib/locales/en/rick_and_morty.yml +116 -3
- data/lib/locales/en/rock_band.yml +228 -1
- data/lib/locales/en/rupaul.yml +120 -122
- data/lib/locales/en/science.yml +481 -3
- data/lib/locales/en/seinfeld.yml +110 -3
- data/lib/locales/en/shakespeare.yml +46 -53
- data/lib/locales/en/silicon_valley.yml +122 -50
- data/lib/locales/en/simpsons.yml +897 -691
- data/lib/locales/en/slack_emoji.yml +874 -8
- data/lib/locales/en/smashing_pumpkins.yml +382 -0
- data/lib/locales/en/source.yml +35 -0
- data/lib/locales/en/south_park.yml +360 -2
- data/lib/locales/en/space.yml +373 -14
- data/lib/locales/en/spongebob.yml +489 -0
- data/lib/locales/en/sport.yml +130 -0
- data/lib/locales/en/star_trek.yml +105 -4
- data/lib/locales/en/star_wars.yml +525 -528
- data/lib/locales/en/stargate.yml +65 -18
- data/lib/locales/en/stranger_thing.yml +31 -33
- data/lib/locales/en/street_fighter.yml +1524 -0
- data/lib/locales/en/studio_ghibli.yml +107 -0
- data/lib/locales/en/subscription.yml +47 -5
- data/lib/locales/en/super_mario.yml +58 -0
- data/lib/locales/en/super_smash_bros.yml +23 -6
- data/lib/locales/en/superhero.yml +574 -4
- data/lib/locales/en/supernatural.yml +141 -0
- data/lib/locales/en/sword_art_online.yml +327 -331
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en/tea.yml +172 -0
- data/lib/locales/en/team.yml +125 -3
- data/lib/locales/en/the_expanse.yml +92 -4
- data/lib/locales/en/the_it_crowd.yml +148 -152
- data/lib/locales/en/the_kingkiller_chronicle.yml +56 -0
- data/lib/locales/en/the_office.yml +82 -0
- data/lib/locales/en/the_room.yml +68 -0
- data/lib/locales/en/the_thick_of_it.yml +83 -3
- data/lib/locales/en/theater.yml +597 -0
- data/lib/locales/en/tolkien.yml +2453 -0
- data/lib/locales/en/touhou.yml +839 -0
- data/lib/locales/en/train_station.yml +280 -0
- data/lib/locales/en/tron.yml +227 -0
- data/lib/locales/en/twin_peaks.yml +130 -3
- data/lib/locales/en/umphreys_mcgee.yml +266 -1
- data/lib/locales/en/university.yml +15 -2
- data/lib/locales/en/v_for_vendetta.yml +157 -160
- data/lib/locales/en/vehicle.yml +2809 -75
- data/lib/locales/en/venture_bros.yml +225 -4
- data/lib/locales/en/verbs.yml +3785 -5
- data/lib/locales/en/volleyball.yml +501 -0
- data/lib/locales/en/warhammer_fantasy.yml +540 -573
- data/lib/locales/en/witcher.yml +426 -7
- data/lib/locales/en/world_cup.yml +1132 -235
- data/lib/locales/en/world_of_warcraft.yml +122 -4
- data/lib/locales/en/yoda.yml +38 -1
- data/lib/locales/en/zelda.yml +962 -4
- data/lib/locales/en-AU.yml +725 -48
- data/lib/locales/en-BORK.yml +104 -1
- data/lib/locales/en-CA.yml +373 -18
- data/lib/locales/en-GB.yml +118 -8
- data/lib/locales/en-IND.yml +1259 -16
- data/lib/locales/en-KE.yml +212 -0
- data/lib/locales/en-MS.yml +364 -16
- data/lib/locales/en-NEP.yml +212 -35
- data/lib/locales/en-NG.yml +737 -65
- data/lib/locales/en-NZ.yml +1153 -121
- data/lib/locales/en-PAK.yml +392 -9
- data/lib/locales/en-SG.yml +581 -15
- data/lib/locales/en-TH.yml +1 -1
- data/lib/locales/en-UG.yml +374 -75
- data/lib/locales/en-US.yml +6921 -81
- data/lib/locales/en-ZA.yml +1394 -13
- data/lib/locales/en-au-ocker.yml +266 -21
- data/lib/locales/en.yml +0 -3
- data/lib/locales/es-AR.yml +4570 -0
- data/lib/locales/es-MX.yml +1907 -41
- data/lib/locales/es.yml +2172 -52
- data/lib/locales/fa.yml +1624 -5
- data/lib/locales/fi-FI.yml +316 -16
- data/lib/locales/fr/address.yml +773 -0
- data/lib/locales/fr/adjective.yml +266 -0
- data/lib/locales/fr/ancient.yml +141 -0
- data/lib/locales/fr/animal.yml +122 -0
- data/lib/locales/fr/appliance.yml +69 -0
- data/lib/locales/fr/book.yml +31 -0
- data/lib/locales/fr/color.yml +34 -0
- data/lib/locales/fr/company.yml +497 -0
- data/lib/locales/fr/compass.yml +71 -0
- data/lib/locales/fr/demographic.yml +6 -0
- data/lib/locales/fr/gender.yml +21 -0
- data/lib/locales/fr/internet.yml +15 -0
- data/lib/locales/fr/lorem.yml +1094 -0
- data/lib/locales/fr/measurement.yml +34 -0
- data/lib/locales/fr/name.yml +1193 -0
- data/lib/locales/fr/phone_number.yml +38 -0
- data/lib/locales/fr/pokemon.yml +421 -0
- data/lib/locales/fr-CA.yml +2754 -45
- data/lib/locales/fr-CH.yml +2455 -42
- data/lib/locales/fr.yml +2 -112
- data/lib/locales/he.yml +255 -9
- data/lib/locales/hy.yml +3630 -119
- data/lib/locales/id.yml +839 -10
- data/lib/locales/it.yml +1310 -31
- data/lib/locales/ja/README.md +13 -0
- data/lib/locales/ja/address.yml +363 -0
- data/lib/locales/ja/adjective.yml +148 -0
- data/lib/locales/ja/ancient.yml +18 -0
- data/lib/locales/ja/animal.yml +87 -0
- data/lib/locales/ja/artist.yml +46 -0
- data/lib/locales/ja/bank.yml +139 -0
- data/lib/locales/ja/book.yml +496 -0
- data/lib/locales/ja/cat.yml +79 -0
- data/lib/locales/ja/coffee.yml +22 -0
- data/lib/locales/ja/color.yml +35 -0
- data/lib/locales/ja/commerce.yml +103 -0
- data/lib/locales/ja/company.yml +26 -0
- data/lib/locales/ja/dog.yml +339 -0
- data/lib/locales/ja/emotion.yml +49 -0
- data/lib/locales/ja/food.yml +41 -0
- data/lib/locales/ja/football.yml +115 -0
- data/lib/locales/ja/gender.yml +6 -0
- data/lib/locales/ja/lorem.yml +1020 -0
- data/lib/locales/ja/name.yml +213 -0
- data/lib/locales/ja/naruto.yml +230 -0
- data/lib/locales/ja/overwatch.yml +37 -0
- data/lib/locales/ja/phone_number.yml +13 -0
- data/lib/locales/ja/pokemon.yml +441 -0
- data/lib/locales/ja/relationship.yml +33 -0
- data/lib/locales/ja/restaurant.yml +82 -0
- data/lib/locales/ja/space.yml +23 -0
- data/lib/locales/ja/sport.yml +130 -0
- data/lib/locales/ja/studio_ghibli.yml +112 -0
- data/lib/locales/ja/subscription.yml +50 -0
- data/lib/locales/ja/super_mario.yml +73 -0
- data/lib/locales/ja/super_smash_bros.yml +8 -0
- data/lib/locales/ja/touhou.yml +466 -0
- data/lib/locales/ja/university.yml +22 -0
- data/lib/locales/ja/zelda.yml +19 -0
- data/lib/locales/ko.yml +1380 -29
- data/lib/locales/lt.yml +315 -0
- data/lib/locales/lv.yml +1221 -27
- data/lib/locales/mi-NZ.yml +283 -0
- data/lib/locales/nb-NO.yml +518 -27
- data/lib/locales/nl.yml +33514 -55
- data/lib/locales/pl.yml +4008 -38
- data/lib/locales/pt-BR.yml +8207 -660
- data/lib/locales/pt.yml +844 -43
- data/lib/locales/ru.yml +1355 -30
- data/lib/locales/sk.yml +4416 -41
- data/lib/locales/sv.yml +731 -41
- data/lib/locales/th.yml +375 -375
- data/lib/locales/tr.yml +77 -19
- data/lib/locales/uk.yml +1810 -44
- data/lib/locales/vi.yml +392 -48
- data/lib/locales/zh-CN/bank.yml +17 -0
- data/lib/locales/zh-CN.yml +540 -18
- data/lib/locales/zh-TW.yml +1030 -14
- metadata +188 -141
- data/History.md +0 -176
- data/lib/faker/default/bossa_nova.rb +0 -33
- data/lib/faker/default/fillmurray.rb +0 -45
- data/lib/faker/default/internet.rb +0 -358
- data/lib/faker/default/lorem_pixel.rb +0 -69
- data/lib/faker/default/twitter.rb +0 -223
- data/lib/locales/en/hobbit.yml +0 -19
- data/lib/locales/en/lord_of_the_rings.yml +0 -6
- data/lib/locales/en/show.yml +0 -597
- data/lib/locales/ja.yml +0 -101
- /data/lib/faker/{books → default}/book.rb +0 -0
- /data/lib/faker/{games → default}/game.rb +0 -0
- /data/lib/faker/{movies → default}/movie.rb +0 -0
- /data/lib/faker/{default/internet_http.rb → internet/http.rb} +0 -0
data/lib/faker/default/bank.rb
CHANGED
|
@@ -16,36 +16,27 @@ module Faker
|
|
|
16
16
|
# Faker::Bank.account_number(digits: 13) #=> 673858237902
|
|
17
17
|
#
|
|
18
18
|
# @faker.version 1.9.1
|
|
19
|
-
def account_number(
|
|
20
|
-
|
|
21
|
-
keywords << :digits if legacy_digits != NOT_GIVEN
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
output = ''
|
|
25
|
-
|
|
26
|
-
output += rand.to_s[2..-1] while output.length < digits
|
|
27
|
-
|
|
28
|
-
output[0...digits]
|
|
19
|
+
def account_number(digits: 10)
|
|
20
|
+
Array.new(digits) { rand(10) }.join
|
|
29
21
|
end
|
|
30
22
|
|
|
31
23
|
##
|
|
32
24
|
# Produces a bank iban number.
|
|
33
25
|
#
|
|
34
|
-
# @param country_code [String] Specifies what country prefix is used to generate the iban code.
|
|
26
|
+
# @param country_code [String, nil] Specifies what country prefix is used to generate the iban code. Providing `nil` will use a random country.
|
|
35
27
|
# @return [String]
|
|
36
28
|
#
|
|
37
29
|
# @example
|
|
38
30
|
# Faker::Bank.iban #=> "GB76DZJM33188515981979"
|
|
39
31
|
# Faker::Bank.iban(country_code: "be") #=> "BE6375388567752043"
|
|
32
|
+
# Faker::Bank.iban(country_code: nil) #=> "DE45186738071857270067"
|
|
40
33
|
#
|
|
41
34
|
# @faker.version 1.7.0
|
|
42
|
-
def iban(
|
|
35
|
+
def iban(country_code: 'GB')
|
|
43
36
|
# Each country has its own format for bank accounts
|
|
44
37
|
# Many of them use letters in certain parts of the account
|
|
45
38
|
# Using regex patterns we can create virtually any type of bank account
|
|
46
|
-
|
|
47
|
-
keywords << :country_code if legacy_country_code != NOT_GIVEN
|
|
48
|
-
end
|
|
39
|
+
country_code ||= iban_country_code
|
|
49
40
|
|
|
50
41
|
begin
|
|
51
42
|
pattern = fetch("bank.iban_details.#{country_code.downcase}.bban_pattern")
|
|
@@ -60,6 +51,19 @@ module Faker
|
|
|
60
51
|
country_code.upcase + iban_checksum(country_code, account) + account
|
|
61
52
|
end
|
|
62
53
|
|
|
54
|
+
##
|
|
55
|
+
# Produces the ISO 3166 code of a country that uses the IBAN system.
|
|
56
|
+
#
|
|
57
|
+
# @return [String]
|
|
58
|
+
#
|
|
59
|
+
# @example
|
|
60
|
+
# Faker::Bank.iban_country_code #=> "CH"
|
|
61
|
+
#
|
|
62
|
+
# @faker.version next
|
|
63
|
+
def iban_country_code
|
|
64
|
+
sample(translate('faker.bank.iban_details').keys).to_s.upcase
|
|
65
|
+
end
|
|
66
|
+
|
|
63
67
|
##
|
|
64
68
|
# Produces a bank name.
|
|
65
69
|
#
|
|
@@ -129,7 +133,7 @@ module Faker
|
|
|
129
133
|
private
|
|
130
134
|
|
|
131
135
|
def checksum(num_string)
|
|
132
|
-
num_array = num_string.
|
|
136
|
+
num_array = num_string.chars.map(&:to_i)
|
|
133
137
|
(
|
|
134
138
|
7 * (num_array[0] + num_array[3] + num_array[6]) +
|
|
135
139
|
3 * (num_array[1] + num_array[4] + num_array[7]) +
|
|
@@ -140,27 +144,25 @@ module Faker
|
|
|
140
144
|
def compile_routing_number
|
|
141
145
|
digit_one_two = %w[00 01 02 03 04 05 06 07 08 09 10 11 12]
|
|
142
146
|
((21..32).to_a + (61..72).to_a + [80]).each { |x| digit_one_two << x.to_s }
|
|
143
|
-
|
|
144
|
-
routing_num
|
|
147
|
+
digit_one_two.sample + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring
|
|
145
148
|
end
|
|
146
149
|
|
|
147
150
|
def compile_bsb_number
|
|
148
151
|
digit_one_two = %w[01 03 06 08 11 12 73 76 78 30]
|
|
149
152
|
state = (2..7).to_a.map(&:to_s).sample
|
|
150
|
-
|
|
151
|
-
bsb_num
|
|
153
|
+
digit_one_two.sample + state + rand_numstring + rand_numstring + rand_numstring
|
|
152
154
|
end
|
|
153
155
|
|
|
154
156
|
# Calculates the mandatory checksum in 3rd and 4th characters in IBAN format
|
|
155
|
-
# source: https://en.wikipedia.org/wiki/International_Bank_Account_Number#
|
|
157
|
+
# source: https://en.wikipedia.org/wiki/International_Bank_Account_Number#Generating_IBAN_check_digits
|
|
156
158
|
def iban_checksum(country_code, account)
|
|
157
159
|
# Converts letters to numbers according the iban rules, A=10..Z=35
|
|
158
160
|
account_to_number = "#{account}#{country_code}00".upcase.chars.map do |d|
|
|
159
161
|
d =~ /[A-Z]/ ? (d.ord - 55).to_s : d
|
|
160
162
|
end.join.to_i
|
|
161
163
|
|
|
162
|
-
# This is answer to (iban_to_num + checksum) % 97 == 1
|
|
163
|
-
checksum =
|
|
164
|
+
# This is the correct answer to (iban_to_num + checksum) % 97 == 1
|
|
165
|
+
checksum = 98 - (account_to_number % 97)
|
|
164
166
|
|
|
165
167
|
# Use leftpad to make the size always to 2
|
|
166
168
|
checksum.to_s.rjust(2, '0')
|
|
@@ -180,9 +182,9 @@ module Faker
|
|
|
180
182
|
|
|
181
183
|
def compile_fraction(routing_num)
|
|
182
184
|
prefix = (1..50).to_a.map(&:to_s).sample
|
|
183
|
-
numerator = routing_num.
|
|
184
|
-
denominator = routing_num.
|
|
185
|
-
prefix
|
|
185
|
+
numerator = routing_num.chars[5..8].join.to_i.to_s
|
|
186
|
+
denominator = routing_num.chars[0..4].join.to_i.to_s
|
|
187
|
+
"#{prefix}-#{numerator}/#{denominator}"
|
|
186
188
|
end
|
|
187
189
|
|
|
188
190
|
def rand_numstring
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Faker
|
|
4
|
+
class Barcode < Base
|
|
5
|
+
class << self
|
|
6
|
+
##
|
|
7
|
+
# Returns a EAN 8 or 13 digit format barcode number with check digit
|
|
8
|
+
# @return [String]
|
|
9
|
+
#
|
|
10
|
+
# @example
|
|
11
|
+
# Faker::Barcode.ean => "85657526"
|
|
12
|
+
# Faker::Barcode.ean(8) => "30152700"
|
|
13
|
+
# Faker::Barcode.ean(13) => "2115190480285"
|
|
14
|
+
#
|
|
15
|
+
# @faker.version 2.14.0
|
|
16
|
+
def ean(length = 8)
|
|
17
|
+
generate_barcode("barcode.ean_#{Integer(length)}")
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
##
|
|
21
|
+
# Returns a EAN 8 or 13 digit format barcode number with composite string attached with check digit
|
|
22
|
+
# @return [String]
|
|
23
|
+
#
|
|
24
|
+
# @example
|
|
25
|
+
# Faker::Barcode.ean_with_composite_sumbology => "41007624|JHOC6649"
|
|
26
|
+
# Faker::Barcode.ean_with_composite_sumbology(8) => "38357961|XUYJ3266"
|
|
27
|
+
# Faker::Barcode.ean_with_composite_sumbology(13) => "9530722443911|CKHWQHID"
|
|
28
|
+
#
|
|
29
|
+
# @faker.version 2.14.0
|
|
30
|
+
def ean_with_composite_symbology(length = 8)
|
|
31
|
+
"#{ean(length)}|#{bothify(parse('barcode.composite_symbol'))}"
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
##
|
|
35
|
+
# Returns a UPC_A format barcode number with check digit
|
|
36
|
+
# @return [String]
|
|
37
|
+
#
|
|
38
|
+
# @example
|
|
39
|
+
# Faker::Barcode.upc_a => "766807541831"
|
|
40
|
+
#
|
|
41
|
+
# @faker.version 2.14.0
|
|
42
|
+
def upc_a
|
|
43
|
+
generate_barcode('barcode.upc_a')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
##
|
|
47
|
+
# Returns a UPC_E format barcode number with check digit
|
|
48
|
+
# @return [String]
|
|
49
|
+
#
|
|
50
|
+
# @example
|
|
51
|
+
# Faker::Barcode.upc_e => "03746820"
|
|
52
|
+
#
|
|
53
|
+
# @faker.version 2.14.0
|
|
54
|
+
def upc_e
|
|
55
|
+
generate_barcode('barcode.upc_e')
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
##
|
|
59
|
+
# Returns a UPC_A format barcode number with composite string attached with check digit
|
|
60
|
+
# @return [String]
|
|
61
|
+
#
|
|
62
|
+
# @example
|
|
63
|
+
# Faker::Barcode.upc_a_with_composite_symbology => "790670155765|JOVG6208"
|
|
64
|
+
#
|
|
65
|
+
# @faker.version 2.14.0
|
|
66
|
+
def upc_a_with_composite_symbology
|
|
67
|
+
"#{upc_a}|#{bothify(parse('barcode.composite_symbol'))}"
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
##
|
|
71
|
+
# Returns a UPC_E format barcode number with composite string attached with check digit
|
|
72
|
+
# @return [String]
|
|
73
|
+
#
|
|
74
|
+
# @example
|
|
75
|
+
# Faker::Barcode.upc_e_with_composite_symbology => "05149247|BKZX9722"
|
|
76
|
+
#
|
|
77
|
+
# @faker.version 2.14.0
|
|
78
|
+
def upc_e_with_composite_symbology
|
|
79
|
+
"#{upc_e}|#{bothify(parse('barcode.composite_symbol'))}"
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
##
|
|
83
|
+
# Returns a ISBN format barcode number with check digit
|
|
84
|
+
# @return [String]
|
|
85
|
+
#
|
|
86
|
+
# @example
|
|
87
|
+
# Faker::Barcode.isbn => "9798363807732"
|
|
88
|
+
#
|
|
89
|
+
# @faker.version 2.14.0
|
|
90
|
+
def isbn
|
|
91
|
+
generate_barcode('barcode.isbn')
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
##
|
|
95
|
+
# Returns a ISMN format barcode number with check digit
|
|
96
|
+
# @return [String]
|
|
97
|
+
#
|
|
98
|
+
# @example
|
|
99
|
+
# Faker::Barcode.ismn => "9790527672897"
|
|
100
|
+
#
|
|
101
|
+
# @faker.version 2.14.0
|
|
102
|
+
def ismn
|
|
103
|
+
generate_barcode('barcode.ismn')
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
##
|
|
107
|
+
# Returns a ISSN format barcode number with check digit
|
|
108
|
+
# @return [String]
|
|
109
|
+
#
|
|
110
|
+
# @example
|
|
111
|
+
# Faker::Barcode.issn => "9775541703338"
|
|
112
|
+
#
|
|
113
|
+
# @faker.version 2.14.0
|
|
114
|
+
def issn
|
|
115
|
+
generate_barcode('barcode.issn')
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
private
|
|
119
|
+
|
|
120
|
+
def generate_barcode(key)
|
|
121
|
+
barcode = parse(key)
|
|
122
|
+
check_digit = generate_check_digit(*sum_even_odd(barcode))
|
|
123
|
+
"#{barcode}#{check_digit}"
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
##
|
|
127
|
+
# Returns the sum of even and odd numbers from value passed
|
|
128
|
+
#
|
|
129
|
+
# @return [Array]
|
|
130
|
+
#
|
|
131
|
+
# @example
|
|
132
|
+
# Faker::Barcode.send(:sum_even_odd, 12345) => [9, 5]
|
|
133
|
+
# Faker::Barcode.send(:sum_even_odd, 87465) => [17, 13]
|
|
134
|
+
#
|
|
135
|
+
# @faker.version 2.14.0
|
|
136
|
+
def sum_even_odd(fake_num)
|
|
137
|
+
number = fake_num.to_i
|
|
138
|
+
sum_even, sum_odd = 0, 0, index = 1
|
|
139
|
+
|
|
140
|
+
while number != 0
|
|
141
|
+
index.even? ? sum_even += number % 10 : sum_odd += number % 10
|
|
142
|
+
|
|
143
|
+
number /= 10
|
|
144
|
+
index += 1
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
[sum_odd, sum_even]
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
##
|
|
151
|
+
# Generates the check digits from sum passed
|
|
152
|
+
#
|
|
153
|
+
# @return [Integer]
|
|
154
|
+
#
|
|
155
|
+
# @example
|
|
156
|
+
# Faker::Barcode.send(:generate_check_digit, 12, 4) => 0
|
|
157
|
+
# Faker::Barcode.send(:generate_check_digit, 23, 5) => 6
|
|
158
|
+
#
|
|
159
|
+
# @faker.version 2.14.0
|
|
160
|
+
def generate_check_digit(odd_sum, even_sum)
|
|
161
|
+
(10 - (odd_sum * 3 + even_sum) % 10) % 10
|
|
162
|
+
end
|
|
163
|
+
end
|
|
164
|
+
end
|
|
165
|
+
end
|
data/lib/faker/default/beer.rb
CHANGED
|
@@ -80,7 +80,7 @@ module Faker
|
|
|
80
80
|
#
|
|
81
81
|
# @faker.version 1.6.2
|
|
82
82
|
def ibu
|
|
83
|
-
rand(10..100)
|
|
83
|
+
"#{rand(10..100)} IBU"
|
|
84
84
|
end
|
|
85
85
|
|
|
86
86
|
##
|
|
@@ -93,7 +93,7 @@ module Faker
|
|
|
93
93
|
#
|
|
94
94
|
# @faker.version 1.6.2
|
|
95
95
|
def alcohol
|
|
96
|
-
rand(2.0..10.0).round(1)
|
|
96
|
+
"#{rand(2.0..10.0).round(1)}%"
|
|
97
97
|
end
|
|
98
98
|
|
|
99
99
|
##
|
|
@@ -106,7 +106,7 @@ module Faker
|
|
|
106
106
|
#
|
|
107
107
|
# @faker.version 1.6.2
|
|
108
108
|
def blg
|
|
109
|
-
rand(5.0..20.0).round(1)
|
|
109
|
+
"#{rand(5.0..20.0).round(1)}°Blg"
|
|
110
110
|
end
|
|
111
111
|
end
|
|
112
112
|
end
|
|
@@ -15,10 +15,8 @@ module Faker
|
|
|
15
15
|
# Faker::Boolean.boolean(true_ratio: 0.2) #=> false
|
|
16
16
|
#
|
|
17
17
|
# @faker.version 1.6.2
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
keywords << :true_ratio if legacy_true_ratio != NOT_GIVEN
|
|
21
|
-
end
|
|
18
|
+
#
|
|
19
|
+
def boolean(true_ratio: 0.5) # rubocop:disable Naming/PredicateMethod
|
|
22
20
|
(rand < true_ratio)
|
|
23
21
|
end
|
|
24
22
|
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Faker
|
|
4
|
+
class Camera < Base
|
|
5
|
+
class << self
|
|
6
|
+
##
|
|
7
|
+
# Produces a brand of a camera
|
|
8
|
+
#
|
|
9
|
+
# @return [String]
|
|
10
|
+
#
|
|
11
|
+
# @example
|
|
12
|
+
# Faker::Camera.brand #=> "Canon"
|
|
13
|
+
#
|
|
14
|
+
# @faker.version next
|
|
15
|
+
def brand
|
|
16
|
+
fetch('camera.brand')
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
##
|
|
20
|
+
# Produces a model of camera
|
|
21
|
+
#
|
|
22
|
+
# @return [String]
|
|
23
|
+
#
|
|
24
|
+
# @example
|
|
25
|
+
# Faker::Camera.model #=> "450D"
|
|
26
|
+
#
|
|
27
|
+
# @faker.version next
|
|
28
|
+
def model
|
|
29
|
+
fetch('camera.model')
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
##
|
|
33
|
+
# Produces a brand with model
|
|
34
|
+
#
|
|
35
|
+
# @return [String]
|
|
36
|
+
#
|
|
37
|
+
# @example
|
|
38
|
+
# Faker::Camera.brand_with_model #=> "Canon 450D"
|
|
39
|
+
#
|
|
40
|
+
# @faker.version next
|
|
41
|
+
def brand_with_model
|
|
42
|
+
fetch('camera.brand_with_model')
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
module Faker
|
|
4
4
|
class Cannabis < Base
|
|
5
|
+
##
|
|
5
6
|
# Produces a random strain.
|
|
6
7
|
#
|
|
7
8
|
# @return [String]
|
|
@@ -14,6 +15,7 @@ module Faker
|
|
|
14
15
|
fetch('cannabis.strains')
|
|
15
16
|
end
|
|
16
17
|
|
|
18
|
+
##
|
|
17
19
|
# Produces a random abbreviation.
|
|
18
20
|
#
|
|
19
21
|
# @return [String]
|
|
@@ -26,6 +28,7 @@ module Faker
|
|
|
26
28
|
fetch('cannabis.cannabinoid_abbreviations')
|
|
27
29
|
end
|
|
28
30
|
|
|
31
|
+
##
|
|
29
32
|
# Produces a random cannabinoid type.
|
|
30
33
|
#
|
|
31
34
|
# @return [String]
|
|
@@ -38,6 +41,7 @@ module Faker
|
|
|
38
41
|
fetch('cannabis.cannabinoids')
|
|
39
42
|
end
|
|
40
43
|
|
|
44
|
+
##
|
|
41
45
|
# Produces a random terpene type.
|
|
42
46
|
#
|
|
43
47
|
# @return [String]
|
|
@@ -50,6 +54,7 @@ module Faker
|
|
|
50
54
|
fetch('cannabis.terpenes')
|
|
51
55
|
end
|
|
52
56
|
|
|
57
|
+
##
|
|
53
58
|
# Produces a random kind of medical use.
|
|
54
59
|
#
|
|
55
60
|
# @return [String]
|
|
@@ -62,6 +67,7 @@ module Faker
|
|
|
62
67
|
fetch('cannabis.medical_uses')
|
|
63
68
|
end
|
|
64
69
|
|
|
70
|
+
##
|
|
65
71
|
# Produces a random health benefit.
|
|
66
72
|
#
|
|
67
73
|
# @return [String]
|
|
@@ -74,6 +80,7 @@ module Faker
|
|
|
74
80
|
fetch('cannabis.health_benefits')
|
|
75
81
|
end
|
|
76
82
|
|
|
83
|
+
##
|
|
77
84
|
# Produces a random category.
|
|
78
85
|
#
|
|
79
86
|
# @return [String]
|
|
@@ -86,6 +93,7 @@ module Faker
|
|
|
86
93
|
fetch('cannabis.categories')
|
|
87
94
|
end
|
|
88
95
|
|
|
96
|
+
##
|
|
89
97
|
# Produces a random type.
|
|
90
98
|
#
|
|
91
99
|
# @return [String]
|
|
@@ -98,6 +106,7 @@ module Faker
|
|
|
98
106
|
fetch('cannabis.types')
|
|
99
107
|
end
|
|
100
108
|
|
|
109
|
+
##
|
|
101
110
|
# Produces a random buzzword.
|
|
102
111
|
#
|
|
103
112
|
# @return [String]
|
|
@@ -110,6 +119,7 @@ module Faker
|
|
|
110
119
|
fetch('cannabis.buzzwords')
|
|
111
120
|
end
|
|
112
121
|
|
|
122
|
+
##
|
|
113
123
|
# Produces a random brand.
|
|
114
124
|
#
|
|
115
125
|
# @return [String]
|
|
@@ -8,23 +8,19 @@ module Faker
|
|
|
8
8
|
##
|
|
9
9
|
# Produces a random Chilean RUT (Rol Unico Tributario, ID with 8 digits).
|
|
10
10
|
#
|
|
11
|
-
# @param min_rut [Integer] Specifies the minimum value of the
|
|
12
|
-
# @param
|
|
11
|
+
# @param min_rut [Integer] Specifies the minimum value of the RUT.
|
|
12
|
+
# @param max_rut [Integer] Specifies the maximum value of the RUT.
|
|
13
|
+
# @param fixed [Boolean] Determines if the RUT is fixed (returns the min_rut value).
|
|
13
14
|
# @return [Number]
|
|
14
15
|
#
|
|
15
16
|
# @example
|
|
16
17
|
# Faker::ChileRut.rut #=> 11235813
|
|
17
|
-
# Faker::ChileRut.rut(min_rut:
|
|
18
|
-
# Faker::ChileRut.rut(min_rut:
|
|
18
|
+
# Faker::ChileRut.rut(min_rut: 10_000_000, max_rut: 30_000_000) #=> 21853211
|
|
19
|
+
# Faker::ChileRut.rut(min_rut: 20_890_156, fixed: true) #=> 20890156
|
|
19
20
|
#
|
|
20
|
-
# @faker.version
|
|
21
|
-
def rut(
|
|
22
|
-
|
|
23
|
-
keywords << :min_rut if legacy_min_rut != NOT_GIVEN
|
|
24
|
-
keywords << :fixed if legacy_fixed != NOT_GIVEN
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
@last_rut = fixed ? min_rut : rand_in_range(min_rut, 99_999_999)
|
|
21
|
+
# @faker.version next
|
|
22
|
+
def rut(min_rut: 1, max_rut: 99_999_999, fixed: false)
|
|
23
|
+
@last_rut = fixed ? min_rut : rand_in_range(min_rut, max_rut)
|
|
28
24
|
end
|
|
29
25
|
|
|
30
26
|
##
|
|
@@ -37,7 +33,7 @@ module Faker
|
|
|
37
33
|
#
|
|
38
34
|
# @faker.version 1.9.2
|
|
39
35
|
def dv
|
|
40
|
-
split_reversed_rut = @last_rut.to_s.reverse.
|
|
36
|
+
split_reversed_rut = @last_rut.to_s.reverse.chars
|
|
41
37
|
seq = [2, 3, 4, 5, 6, 7]
|
|
42
38
|
i = 0
|
|
43
39
|
digit_sum = split_reversed_rut.reduce(0) do |sum, n|
|
|
@@ -46,9 +42,10 @@ module Faker
|
|
|
46
42
|
partial_result
|
|
47
43
|
end
|
|
48
44
|
partial_check_digit = 11 - (digit_sum % 11)
|
|
49
|
-
|
|
45
|
+
case partial_check_digit
|
|
46
|
+
when 11
|
|
50
47
|
'0'
|
|
51
|
-
|
|
48
|
+
when 10
|
|
52
49
|
'k'
|
|
53
50
|
else
|
|
54
51
|
partial_check_digit.to_s
|
|
@@ -72,26 +69,30 @@ module Faker
|
|
|
72
69
|
##
|
|
73
70
|
# Produces a random Chilean RUT (Rol Unico Tributario, ID with 8 digits) with a dv (digito verificador, check-digit).
|
|
74
71
|
#
|
|
75
|
-
# @param min_rut [Integer] Specifies the minimum value of the
|
|
76
|
-
# @param
|
|
72
|
+
# @param min_rut [Integer] Specifies the minimum value of the RUT.
|
|
73
|
+
# @param max_rut [Integer] Specifies the maximum value of the RUT.
|
|
74
|
+
# @param fixed [Boolean] Determines if the RUT is fixed (returns the min_rut value).
|
|
77
75
|
# @return [String]
|
|
78
76
|
#
|
|
79
77
|
# @example
|
|
80
78
|
# Faker::ChileRut.full_rut #=> "30686957-4"
|
|
81
|
-
# Faker::ChileRut.full_rut(min_rut:
|
|
82
|
-
# Faker::ChileRut.full_rut(min_rut:
|
|
79
|
+
# Faker::ChileRut.full_rut(min_rut: 10_000_000, max_rut: 30_000_000) #=> "20686957-4"
|
|
80
|
+
# Faker::ChileRut.full_rut(min_rut: 30_686_957, fixed: true) #=> "30686957-4"
|
|
83
81
|
#
|
|
84
|
-
# @faker.version
|
|
85
|
-
def full_rut(
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
"#{rut(min_rut: min_rut, fixed: fixed)}-#{dv}"
|
|
82
|
+
# @faker.version next
|
|
83
|
+
def full_rut(min_rut: 1, max_rut: 99_999_999, fixed: false, formatted: false)
|
|
84
|
+
this_rut = rut(min_rut: min_rut, max_rut: max_rut, fixed: fixed)
|
|
85
|
+
this_rut = format_rut(this_rut) if formatted
|
|
86
|
+
"#{this_rut}-#{dv}"
|
|
92
87
|
end
|
|
93
88
|
|
|
94
89
|
attr_reader :last_rut
|
|
90
|
+
|
|
91
|
+
private
|
|
92
|
+
|
|
93
|
+
def format_rut(rut)
|
|
94
|
+
rut.to_s.reverse.gsub(/(\d{3})(?=\d)/, '\\1.').reverse
|
|
95
|
+
end
|
|
95
96
|
end
|
|
96
97
|
end
|
|
97
98
|
end
|