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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1131 -19
- data/README.md +249 -105
- data/lib/faker/blockchain/aeternity.rb +5 -5
- data/lib/faker/blockchain/bitcoin.rb +2 -2
- data/lib/faker/blockchain/ethereum.rb +1 -1
- data/lib/faker/blockchain/tezos.rb +31 -3
- 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/creature/bird.rb +203 -0
- data/lib/faker/default/address.rb +42 -32
- data/lib/faker/default/adjective.rb +35 -0
- data/lib/faker/default/alphanumeric.rb +2 -8
- data/lib/faker/default/app.rb +1 -10
- data/lib/faker/default/avatar.rb +1 -12
- data/lib/faker/default/bank.rb +104 -19
- data/lib/faker/default/barcode.rb +165 -0
- data/lib/faker/default/beer.rb +3 -3
- data/lib/faker/default/blood.rb +48 -0
- data/lib/faker/default/boolean.rb +1 -4
- data/lib/faker/default/business.rb +1 -1
- data/lib/faker/default/camera.rb +46 -0
- data/lib/faker/default/cannabis.rb +10 -0
- data/lib/faker/default/chile_rut.rb +62 -18
- data/lib/faker/default/chuck_norris.rb +1 -0
- data/lib/faker/default/code.rb +162 -52
- data/lib/faker/default/color.rb +77 -6
- data/lib/faker/default/commerce.rb +105 -28
- data/lib/faker/default/company.rb +210 -28
- data/lib/faker/default/compass.rb +135 -0
- data/lib/faker/default/computer.rb +63 -0
- data/lib/faker/default/construction.rb +54 -0
- data/lib/faker/default/cosmere.rb +90 -0
- data/lib/faker/default/crypto.rb +26 -4
- data/lib/faker/default/crypto_coin.rb +48 -15
- data/lib/faker/default/date.rb +81 -54
- data/lib/faker/default/demographic.rb +1 -5
- data/lib/faker/default/driving_licence.rb +85 -18
- 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 +53 -21
- data/lib/faker/default/finance.rb +75 -7
- data/lib/faker/default/food.rb +28 -2
- data/lib/faker/default/gender.rb +1 -1
- data/lib/faker/default/hipster.rb +108 -51
- data/lib/faker/default/hobby.rb +22 -0
- data/lib/faker/default/html.rb +230 -0
- data/lib/faker/default/id_number.rb +251 -17
- data/lib/faker/default/internet.rb +361 -113
- data/lib/faker/default/internet_http.rb +48 -0
- data/lib/faker/default/invoice.rb +37 -23
- data/lib/faker/default/json.rb +63 -25
- data/lib/faker/default/lorem.rb +177 -75
- data/lib/faker/default/lorem_flickr.rb +69 -37
- data/lib/faker/default/markdown.rb +97 -11
- data/lib/faker/default/marketing.rb +1 -1
- data/lib/faker/default/measurement.rb +101 -42
- data/lib/faker/default/military.rb +26 -0
- data/lib/faker/default/mountain.rb +33 -0
- data/lib/faker/default/name.rb +99 -5
- data/lib/faker/default/nation.rb +0 -3
- data/lib/faker/default/{nhs.rb → national_health_service.rb} +26 -6
- data/lib/faker/default/number.rb +39 -69
- data/lib/faker/default/omniauth.rb +115 -57
- data/lib/faker/default/phone_number.rb +112 -14
- data/lib/faker/default/placeholdit.rb +23 -12
- data/lib/faker/default/relationship.rb +2 -6
- data/lib/faker/default/religion.rb +6 -0
- data/lib/faker/default/science.rb +108 -0
- data/lib/faker/default/slack_emoji.rb +81 -0
- data/lib/faker/default/source.rb +3 -16
- data/lib/faker/default/south_africa.rb +93 -3
- data/lib/faker/default/space.rb +1 -1
- data/lib/faker/default/string.rb +18 -8
- data/lib/faker/default/stripe.rb +68 -23
- data/lib/faker/default/tea.rb +41 -0
- data/lib/faker/default/theater.rb +52 -0
- data/lib/faker/default/time.rb +4 -34
- data/lib/faker/default/twitter.rb +42 -23
- data/lib/faker/default/types.rb +92 -34
- data/lib/faker/default/university.rb +45 -0
- data/lib/faker/default/vehicle.rb +227 -57
- data/lib/faker/default/verb.rb +45 -0
- data/lib/faker/default/vulnerability_identifier.rb +23 -0
- data/lib/faker/default/world_cup.rb +6 -15
- 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 +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 +16 -5
- data/lib/faker/games/minecraft.rb +113 -0
- 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/warhammer_fantasy.rb +74 -0
- data/lib/faker/games/witcher.rb +39 -0
- data/lib/faker/games/world_of_warcraft.rb +26 -1
- 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 +51 -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/locations/australia.rb +52 -0
- data/lib/faker/movies/avatar.rb +49 -0
- data/lib/faker/movies/departed.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/movie.rb +13 -0
- 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/music/hiphop.rb +48 -0
- data/lib/faker/music/music.rb +12 -0
- data/lib/faker/music/opera.rb +237 -1
- data/lib/faker/music/pearl_jam.rb +50 -0
- data/lib/faker/music/phish.rb +27 -1
- data/lib/faker/music/prince.rb +64 -0
- data/lib/faker/music/rock_band.rb +12 -0
- data/lib/faker/music/rush.rb +37 -0
- data/lib/faker/music/smashing_pumpkins.rb +64 -0
- data/lib/faker/quotes/quote.rb +93 -1
- data/lib/faker/quotes/rajnikanth.rb +1 -0
- data/lib/faker/quotes/shakespeare.rb +70 -0
- data/lib/faker/religion/bible.rb +50 -0
- data/lib/faker/sports/chess.rb +90 -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/travel/train_station.rb +54 -0
- data/lib/faker/tv_shows/aqua_teen_hunger_force.rb +13 -0
- data/lib/faker/tv_shows/archer.rb +51 -0
- data/lib/faker/tv_shows/big_bang_theory.rb +37 -0
- data/lib/faker/tv_shows/brooklyn_nine_nine.rb +38 -0
- data/lib/faker/tv_shows/buffy.rb +17 -4
- data/lib/faker/tv_shows/dr_who.rb +1 -1
- data/lib/faker/tv_shows/final_space.rb +51 -0
- data/lib/faker/tv_shows/futurama.rb +65 -0
- data/lib/faker/tv_shows/michael_scott.rb +0 -3
- data/lib/faker/tv_shows/simpsons.rb +14 -0
- 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 +37 -0
- data/lib/faker/tv_shows/supernatural.rb +48 -0
- data/lib/faker/tv_shows/the_fresh_prince_of_bel_air.rb +17 -4
- data/lib/faker/tv_shows/the_office.rb +37 -0
- data/lib/faker/version.rb +2 -2
- data/lib/faker.rb +51 -87
- data/lib/helpers/base58.rb +1 -1
- data/lib/helpers/char.rb +22 -27
- data/lib/helpers/deprecator.rb +53 -0
- data/lib/helpers/positional_generator.rb +480 -0
- data/lib/helpers/unique_generator.rb +13 -13
- data/lib/locales/README.md +18 -2
- data/lib/locales/ar.yml +6 -1
- data/lib/locales/bg.yml +1 -2
- data/lib/locales/da-DK.yml +529 -35
- data/lib/locales/de-AT.yml +3487 -25
- data/lib/locales/de-CH.yml +6020 -9
- data/lib/locales/de.yml +7185 -97
- data/lib/locales/ee.yml +0 -1
- data/lib/locales/en/address.yml +1828 -562
- data/lib/locales/en/adjective.yml +179 -0
- data/lib/locales/en/airport.yml +381 -0
- data/lib/locales/en/animal.yml +1 -1
- data/lib/locales/en/aqua_teen_hunger_force.yml +33 -1
- data/lib/locales/en/archer.yml +75 -0
- data/lib/locales/en/australia.yml +108 -0
- data/lib/locales/en/avatar.yml +31 -0
- data/lib/locales/en/bank.yml +2 -2
- data/lib/locales/en/barcode.yml +24 -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/book.yml +487 -3
- data/lib/locales/en/brooklyn_nine_nine.yml +35 -0
- data/lib/locales/en/buffy.yml +1 -1
- data/lib/locales/en/camera.yml +611 -0
- data/lib/locales/en/cat.yml +1 -1
- data/lib/locales/en/chess.yml +103 -0
- data/lib/locales/en/clash_of_clan.yml +101 -0
- data/lib/locales/en/coffee.yml +1 -1
- data/lib/locales/en/commerce.yml +17 -0
- data/lib/locales/en/community.yml +17 -17
- data/lib/locales/en/company.yml +3 -2
- data/lib/locales/en/computer.yml +55 -0
- data/lib/locales/en/conan.yml +171 -0
- data/lib/locales/en/control.yml +247 -0
- data/lib/locales/en/cowboy_bebop.yml +163 -0
- data/lib/locales/en/demographic.yml +218 -5
- data/lib/locales/en/departed.yml +50 -0
- data/lib/locales/en/device.yml +112 -4
- data/lib/locales/en/dnd.yml +636 -0
- data/lib/locales/en/dog.yml +262 -7
- data/lib/locales/en/doraemon.yml +286 -0
- data/lib/locales/en/dota.yml +704 -63
- 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/dune.yml +270 -131
- data/lib/locales/en/educator.yml +6 -0
- data/lib/locales/en/elder_scrolls.yml +583 -9
- data/lib/locales/en/emotion.yml +480 -0
- data/lib/locales/en/fallout.yml +311 -133
- data/lib/locales/en/file.yml +9 -1
- data/lib/locales/en/final_fantasy_xiv.yml +754 -0
- data/lib/locales/en/final_space.yml +37 -0
- data/lib/locales/en/finance.yml +80 -4
- data/lib/locales/en/food.yml +1067 -10
- data/lib/locales/en/football.yml +3 -3
- data/lib/locales/en/fresh_prince_of_bel_air.yml +1 -1
- data/lib/locales/en/fullmetal_alchemist_brotherhood.yml +78 -0
- data/lib/locales/en/futurama.yml +344 -0
- data/lib/locales/en/game.yml +11 -0
- data/lib/locales/en/hackers.yml +53 -0
- data/lib/locales/en/half_life.yml +84 -3
- data/lib/locales/en/harry_potter.yml +1 -1
- data/lib/locales/en/heroes.yml +408 -3
- data/lib/locales/en/heroes_of_the_storm.yml +131 -4
- data/lib/locales/en/hobby.yml +171 -0
- data/lib/locales/en/horse.yml +2 -2
- data/lib/locales/en/house.yml +1 -1
- data/lib/locales/en/how_to_train_your_dragon.yml +174 -0
- data/lib/locales/en/id_number.yml +1 -1
- data/lib/locales/en/internet.yml +136 -3
- data/lib/locales/en/jack_handey.yml +54 -0
- data/lib/locales/en/kamen_rider.yml +452 -0
- data/lib/locales/en/kpop.yml +7 -7
- data/lib/locales/en/league_of_legends.yml +285 -6
- data/lib/locales/en/lebowski.yml +1 -1
- data/lib/locales/en/lovecraft.yml +76 -6
- data/lib/locales/en/military.yml +179 -5
- 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 +194 -2
- data/lib/locales/en/music.yml +461 -29
- data/lib/locales/en/myst.yml +87 -31
- data/lib/locales/en/name.yml +5 -4
- data/lib/locales/en/naruto.yml +230 -0
- data/lib/locales/en/one_piece.yml +2 -2
- data/lib/locales/en/opera.yml +169 -1
- data/lib/locales/en/overwatch.yml +2648 -2622
- data/lib/locales/en/pearl_jam.yml +213 -0
- data/lib/locales/en/phish.yml +392 -1
- data/lib/locales/en/phone_number.yml +78 -3
- data/lib/locales/en/pokemon.yml +417 -4
- data/lib/locales/en/prince.yml +227 -0
- data/lib/locales/en/quote.yml +692 -163
- data/lib/locales/en/rock_band.yml +1 -0
- data/lib/locales/en/rush.yml +32 -0
- data/lib/locales/en/science.yml +481 -3
- data/lib/locales/en/shakespeare.yml +21 -24
- data/lib/locales/en/simpsons.yml +668 -0
- 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 +1 -1
- data/lib/locales/en/spongebob.yml +489 -0
- data/lib/locales/en/sport.yml +130 -0
- data/lib/locales/en/star_trek.yml +1 -1
- data/lib/locales/en/star_wars.yml +568 -220
- data/lib/locales/en/stranger_thing.yml +1 -1
- data/lib/locales/en/street_fighter.yml +1524 -0
- data/lib/locales/en/studio_ghibli.yml +107 -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 +23 -6
- data/lib/locales/en/supernatural.yml +141 -0
- data/lib/locales/en/tarkov.yml +593 -0
- data/lib/locales/en/tea.yml +172 -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_room.yml +68 -0
- 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/vehicle.yml +2809 -75
- data/lib/locales/en/volleyball.yml +501 -0
- data/lib/locales/en/warhammer_fantasy.yml +582 -0
- data/lib/locales/en/witcher.yml +426 -7
- data/lib/locales/en/world_of_warcraft.yml +122 -4
- data/lib/locales/en/zelda.yml +962 -4
- data/lib/locales/en-AU.yml +728 -17
- data/lib/locales/en-CA.yml +373 -16
- data/lib/locales/en-GB.yml +116 -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 +1 -0
- data/lib/locales/en-NZ.yml +1153 -121
- data/lib/locales/en-PAK.yml +369 -9
- data/lib/locales/en-SG.yml +581 -15
- data/lib/locales/en-UG.yml +1 -0
- data/lib/locales/en-US.yml +6937 -71
- data/lib/locales/en-ZA.yml +1 -1
- 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 +1 -2
- data/lib/locales/es.yml +58 -3
- data/lib/locales/fi-FI.yml +4 -2
- 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 +4 -0
- data/lib/locales/fr/lorem.yml +5 -0
- data/lib/locales/fr/measurement.yml +7 -0
- data/lib/locales/fr/name.yml +22 -0
- data/lib/locales/fr/phone_number.yml +7 -0
- data/lib/locales/fr/pokemon.yml +7 -0
- data/lib/locales/fr-CA.yml +2748 -43
- data/lib/locales/fr-CH.yml +3 -4
- data/lib/locales/fr.yml +2 -112
- data/lib/locales/hy.yml +3624 -119
- data/lib/locales/id.yml +839 -10
- data/lib/locales/it.yml +1304 -31
- 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/football.yml +115 -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/sport.yml +130 -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/touhou.yml +466 -0
- data/lib/locales/ja/university.yml +9 -0
- data/lib/locales/ja/zelda.yml +5 -0
- data/lib/locales/ko.yml +1450 -17
- data/lib/locales/lt.yml +315 -0
- data/lib/locales/lv.yml +1 -2
- data/lib/locales/mi-NZ.yml +283 -0
- data/lib/locales/nb-NO.yml +518 -27
- data/lib/locales/nl.yml +1 -1
- data/lib/locales/pl.yml +1 -2
- data/lib/locales/pt-BR.yml +8157 -659
- data/lib/locales/pt.yml +844 -43
- data/lib/locales/ru.yml +1355 -30
- data/lib/locales/sk.yml +4410 -41
- data/lib/locales/sv.yml +100 -0
- data/lib/locales/th.yml +76 -76
- data/lib/locales/tr.yml +1 -2
- data/lib/locales/uk.yml +1810 -44
- data/lib/locales/vi.yml +1 -0
- data/lib/locales/zh-CN/bank.yml +17 -0
- data/lib/locales/zh-CN.yml +1 -0
- data/lib/locales/zh-TW.yml +1 -0
- metadata +192 -127
- data/History.md +0 -176
- data/lib/faker/default/fillmurray.rb +0 -45
- data/lib/faker/default/lorem_pixel.rb +0 -47
- data/lib/locales/en/hobbit.yml +0 -19
- data/lib/locales/en/lord_of_the_rings.yml +0 -6
- data/lib/locales/ja.yml +0 -101
data/lib/faker/default/app.rb
CHANGED
|
@@ -42,8 +42,6 @@ module Faker
|
|
|
42
42
|
parse('app.author')
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
-
# rubocop:disable Metrics/ParameterLists
|
|
46
|
-
|
|
47
45
|
##
|
|
48
46
|
# Produces a String representing a semantic version identifier.
|
|
49
47
|
#
|
|
@@ -62,14 +60,7 @@ module Faker
|
|
|
62
60
|
# Faker::App.semantic_version(patch: 5..6) #=> "7.2.6"
|
|
63
61
|
#
|
|
64
62
|
# @faker.version 1.4.3
|
|
65
|
-
def semantic_version(
|
|
66
|
-
# rubocop:enable Metrics/ParameterLists
|
|
67
|
-
warn_for_deprecated_arguments do |keywords|
|
|
68
|
-
keywords << :major if legacy_major != NOT_GIVEN
|
|
69
|
-
keywords << :minor if legacy_minor != NOT_GIVEN
|
|
70
|
-
keywords << :patch if legacy_patch != NOT_GIVEN
|
|
71
|
-
end
|
|
72
|
-
|
|
63
|
+
def semantic_version(major: 0..9, minor: 0..9, patch: 1..9)
|
|
73
64
|
[major, minor, patch].map { |chunk| sample(Array(chunk)) }.join('.')
|
|
74
65
|
end
|
|
75
66
|
end
|
data/lib/faker/default/avatar.rb
CHANGED
|
@@ -6,8 +6,6 @@ module Faker
|
|
|
6
6
|
# @private
|
|
7
7
|
SUPPORTED_FORMATS = %w[png jpg bmp].freeze
|
|
8
8
|
|
|
9
|
-
# rubocop:disable Metrics/ParameterLists
|
|
10
|
-
|
|
11
9
|
##
|
|
12
10
|
# Produces a URL for an avatar from robohash.org
|
|
13
11
|
#
|
|
@@ -38,16 +36,7 @@ module Faker
|
|
|
38
36
|
# #=> "https://robohash.org/my-own-slug.bmp?size=50x50&set=set1&bgset=bg1"
|
|
39
37
|
#
|
|
40
38
|
# @faker.version 1.4.3
|
|
41
|
-
def image(
|
|
42
|
-
# rubocop:enable Metrics/ParameterLists
|
|
43
|
-
warn_for_deprecated_arguments do |keywords|
|
|
44
|
-
keywords << :slug if legacy_slug != NOT_GIVEN
|
|
45
|
-
keywords << :size if legacy_size != NOT_GIVEN
|
|
46
|
-
keywords << :format if legacy_format != NOT_GIVEN
|
|
47
|
-
keywords << :set if legacy_set != NOT_GIVEN
|
|
48
|
-
keywords << :bgset if legacy_bgset != NOT_GIVEN
|
|
49
|
-
end
|
|
50
|
-
|
|
39
|
+
def image(slug: nil, size: '300x300', format: 'png', set: 'set1', bgset: nil)
|
|
51
40
|
raise ArgumentError, 'Size should be specified in format 300x300' unless size =~ /^[0-9]+x[0-9]+$/
|
|
52
41
|
raise ArgumentError, "Supported formats are #{SUPPORTED_FORMATS.join(', ')}" unless SUPPORTED_FORMATS.include?(format)
|
|
53
42
|
|
data/lib/faker/default/bank.rb
CHANGED
|
@@ -5,25 +5,42 @@ module Faker
|
|
|
5
5
|
flexible :bank
|
|
6
6
|
|
|
7
7
|
class << self
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
##
|
|
9
|
+
# Produces a bank account number.
|
|
10
|
+
#
|
|
11
|
+
# @param digits [Integer] Number of digits that the generated account number should have.
|
|
12
|
+
# @return [String]
|
|
13
|
+
#
|
|
14
|
+
# @example
|
|
15
|
+
# Faker::Bank.account_number #=> 6738582379
|
|
16
|
+
# Faker::Bank.account_number(digits: 13) #=> 673858237902
|
|
17
|
+
#
|
|
18
|
+
# @faker.version 1.9.1
|
|
19
|
+
def account_number(digits: 10)
|
|
13
20
|
output = ''
|
|
14
21
|
|
|
15
|
-
output += rand.to_s[2
|
|
22
|
+
output += rand.to_s[2..] while output.length < digits
|
|
16
23
|
|
|
17
24
|
output[0...digits]
|
|
18
25
|
end
|
|
19
26
|
|
|
20
|
-
|
|
27
|
+
##
|
|
28
|
+
# Produces a bank iban number.
|
|
29
|
+
#
|
|
30
|
+
# @param country_code [String, nil] Specifies what country prefix is used to generate the iban code. Providing `nil` will use a random country.
|
|
31
|
+
# @return [String]
|
|
32
|
+
#
|
|
33
|
+
# @example
|
|
34
|
+
# Faker::Bank.iban #=> "GB76DZJM33188515981979"
|
|
35
|
+
# Faker::Bank.iban(country_code: "be") #=> "BE6375388567752043"
|
|
36
|
+
# Faker::Bank.iban(country_code: nil) #=> "DE45186738071857270067"
|
|
37
|
+
#
|
|
38
|
+
# @faker.version 1.7.0
|
|
39
|
+
def iban(country_code: 'GB')
|
|
21
40
|
# Each country has its own format for bank accounts
|
|
22
41
|
# Many of them use letters in certain parts of the account
|
|
23
42
|
# Using regex patterns we can create virtually any type of bank account
|
|
24
|
-
|
|
25
|
-
keywords << :country_code if legacy_country_code != NOT_GIVEN
|
|
26
|
-
end
|
|
43
|
+
country_code ||= iban_country_code
|
|
27
44
|
|
|
28
45
|
begin
|
|
29
46
|
pattern = fetch("bank.iban_details.#{country_code.downcase}.bban_pattern")
|
|
@@ -38,26 +55,89 @@ module Faker
|
|
|
38
55
|
country_code.upcase + iban_checksum(country_code, account) + account
|
|
39
56
|
end
|
|
40
57
|
|
|
58
|
+
##
|
|
59
|
+
# Produces the ISO 3166 code of a country that uses the IBAN system.
|
|
60
|
+
#
|
|
61
|
+
# @return [String]
|
|
62
|
+
#
|
|
63
|
+
# @example
|
|
64
|
+
# Faker::Bank.iban_country_code #=> "CH"
|
|
65
|
+
#
|
|
66
|
+
# @faker.version next
|
|
67
|
+
def iban_country_code
|
|
68
|
+
sample(translate('faker.bank.iban_details').keys).to_s.upcase
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
##
|
|
72
|
+
# Produces a bank name.
|
|
73
|
+
#
|
|
74
|
+
# @return [String]
|
|
75
|
+
#
|
|
76
|
+
# @example
|
|
77
|
+
# Faker::Bank.name #=> "ABN AMRO CORPORATE FINANCE LIMITED"
|
|
78
|
+
#
|
|
79
|
+
# @faker.version 1.7.0
|
|
41
80
|
def name
|
|
42
81
|
fetch('bank.name')
|
|
43
82
|
end
|
|
44
83
|
|
|
84
|
+
##
|
|
85
|
+
# Produces a routing number.
|
|
86
|
+
#
|
|
87
|
+
# @return [String]
|
|
88
|
+
#
|
|
89
|
+
# @example
|
|
90
|
+
# Faker::Bank.routing_number #=> "729343831"
|
|
91
|
+
#
|
|
92
|
+
# @faker.version 1.9.1
|
|
45
93
|
def routing_number
|
|
46
94
|
valid_routing_number
|
|
47
95
|
end
|
|
48
96
|
|
|
97
|
+
##
|
|
98
|
+
# Produces a valid routing number.
|
|
99
|
+
#
|
|
100
|
+
# @return [String]
|
|
101
|
+
#
|
|
102
|
+
# @example
|
|
103
|
+
# Faker::Bank.routing_number #=> "729343831"
|
|
104
|
+
#
|
|
105
|
+
# @faker.version 1.9.1
|
|
49
106
|
def routing_number_with_format
|
|
50
107
|
compile_fraction(valid_routing_number)
|
|
51
108
|
end
|
|
52
109
|
|
|
110
|
+
##
|
|
111
|
+
# Produces a swift / bic number.
|
|
112
|
+
#
|
|
113
|
+
# @return [String]
|
|
114
|
+
#
|
|
115
|
+
# @example
|
|
116
|
+
# Faker::Bank.swift_bic #=> "AAFMGB21"
|
|
117
|
+
#
|
|
118
|
+
# @faker.version 1.7.0
|
|
53
119
|
def swift_bic
|
|
54
120
|
fetch('bank.swift_bic')
|
|
55
121
|
end
|
|
56
122
|
|
|
123
|
+
##
|
|
124
|
+
# Produces an Australian BSB (Bank-State-Branch) number
|
|
125
|
+
#
|
|
126
|
+
# @return [String]
|
|
127
|
+
#
|
|
128
|
+
# @example
|
|
129
|
+
# Faker::Bank.bsb_number
|
|
130
|
+
# #=> "036616"
|
|
131
|
+
#
|
|
132
|
+
# @faker.version 2.13.0
|
|
133
|
+
def bsb_number
|
|
134
|
+
compile_bsb_number
|
|
135
|
+
end
|
|
136
|
+
|
|
57
137
|
private
|
|
58
138
|
|
|
59
139
|
def checksum(num_string)
|
|
60
|
-
num_array = num_string.
|
|
140
|
+
num_array = num_string.chars.map(&:to_i)
|
|
61
141
|
(
|
|
62
142
|
7 * (num_array[0] + num_array[3] + num_array[6]) +
|
|
63
143
|
3 * (num_array[1] + num_array[4] + num_array[7]) +
|
|
@@ -68,20 +148,25 @@ module Faker
|
|
|
68
148
|
def compile_routing_number
|
|
69
149
|
digit_one_two = %w[00 01 02 03 04 05 06 07 08 09 10 11 12]
|
|
70
150
|
((21..32).to_a + (61..72).to_a + [80]).each { |x| digit_one_two << x.to_s }
|
|
71
|
-
|
|
72
|
-
|
|
151
|
+
digit_one_two.sample + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring + rand_numstring
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
def compile_bsb_number
|
|
155
|
+
digit_one_two = %w[01 03 06 08 11 12 73 76 78 30]
|
|
156
|
+
state = (2..7).to_a.map(&:to_s).sample
|
|
157
|
+
digit_one_two.sample + state + rand_numstring + rand_numstring + rand_numstring
|
|
73
158
|
end
|
|
74
159
|
|
|
75
160
|
# Calculates the mandatory checksum in 3rd and 4th characters in IBAN format
|
|
76
|
-
# source: https://en.wikipedia.org/wiki/International_Bank_Account_Number#
|
|
161
|
+
# source: https://en.wikipedia.org/wiki/International_Bank_Account_Number#Generating_IBAN_check_digits
|
|
77
162
|
def iban_checksum(country_code, account)
|
|
78
163
|
# Converts letters to numbers according the iban rules, A=10..Z=35
|
|
79
164
|
account_to_number = "#{account}#{country_code}00".upcase.chars.map do |d|
|
|
80
165
|
d =~ /[A-Z]/ ? (d.ord - 55).to_s : d
|
|
81
166
|
end.join.to_i
|
|
82
167
|
|
|
83
|
-
# This is answer to (iban_to_num + checksum) % 97 == 1
|
|
84
|
-
checksum =
|
|
168
|
+
# This is the correct answer to (iban_to_num + checksum) % 97 == 1
|
|
169
|
+
checksum = 98 - (account_to_number % 97)
|
|
85
170
|
|
|
86
171
|
# Use leftpad to make the size always to 2
|
|
87
172
|
checksum.to_s.rjust(2, '0')
|
|
@@ -101,9 +186,9 @@ module Faker
|
|
|
101
186
|
|
|
102
187
|
def compile_fraction(routing_num)
|
|
103
188
|
prefix = (1..50).to_a.map(&:to_s).sample
|
|
104
|
-
numerator = routing_num.
|
|
105
|
-
denominator = routing_num.
|
|
106
|
-
prefix
|
|
189
|
+
numerator = routing_num.chars[5..8].join.to_i.to_s
|
|
190
|
+
denominator = routing_num.chars[0..4].join.to_i.to_s
|
|
191
|
+
"#{prefix}-#{numerator}/#{denominator}"
|
|
107
192
|
end
|
|
108
193
|
|
|
109
194
|
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
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Faker
|
|
4
|
+
class Blood < Base
|
|
5
|
+
flexible :blood
|
|
6
|
+
|
|
7
|
+
class << self
|
|
8
|
+
##
|
|
9
|
+
# Produces a random blood type.
|
|
10
|
+
#
|
|
11
|
+
# @return [String]
|
|
12
|
+
#
|
|
13
|
+
# @example
|
|
14
|
+
# Faker::Blood.type #=> "AB"
|
|
15
|
+
#
|
|
16
|
+
# @faker.version 2.13.0
|
|
17
|
+
def type
|
|
18
|
+
fetch('blood.type')
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
##
|
|
22
|
+
# Produces a random blood RH-Factor.
|
|
23
|
+
#
|
|
24
|
+
# @return [String]
|
|
25
|
+
#
|
|
26
|
+
# @example
|
|
27
|
+
# Faker::Blood.rh_factor #=> "-"
|
|
28
|
+
#
|
|
29
|
+
# @faker.version 2.13.0
|
|
30
|
+
def rh_factor
|
|
31
|
+
fetch('blood.rh_factor')
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
##
|
|
35
|
+
# Produces a random blood group name.
|
|
36
|
+
#
|
|
37
|
+
# @return [String]
|
|
38
|
+
#
|
|
39
|
+
# @example
|
|
40
|
+
# Faker::Blood.group #=> "AB-"
|
|
41
|
+
#
|
|
42
|
+
# @faker.version 2.13.0
|
|
43
|
+
def group
|
|
44
|
+
parse('blood.group')
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -15,10 +15,7 @@ module Faker
|
|
|
15
15
|
# Faker::Boolean.boolean(true_ratio: 0.2) #=> false
|
|
16
16
|
#
|
|
17
17
|
# @faker.version 1.6.2
|
|
18
|
-
def boolean(
|
|
19
|
-
warn_for_deprecated_arguments do |keywords|
|
|
20
|
-
keywords << :true_ratio if legacy_true_ratio != NOT_GIVEN
|
|
21
|
-
end
|
|
18
|
+
def boolean(true_ratio: 0.5)
|
|
22
19
|
(rand < true_ratio)
|
|
23
20
|
end
|
|
24
21
|
end
|
|
@@ -26,7 +26,7 @@ module Faker
|
|
|
26
26
|
# @return [Date]
|
|
27
27
|
#
|
|
28
28
|
# @example
|
|
29
|
-
# Faker::Business.
|
|
29
|
+
# Faker::Business.credit_card_expiry_date #=> <Date: 2015-11-11 ((2457338j,0s,0n),+0s,2299161j)>
|
|
30
30
|
#
|
|
31
31
|
# @faker.version 1.2.0
|
|
32
32
|
def credit_card_expiry_date
|
|
@@ -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]
|