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
|
@@ -5,35 +5,49 @@ module Faker
|
|
|
5
5
|
flexible :invoice
|
|
6
6
|
|
|
7
7
|
class << self
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
##
|
|
9
|
+
# Produces a random amount between values with 2 decimals
|
|
10
|
+
#
|
|
11
|
+
# @param from [Integer] Specifies lower limit.
|
|
12
|
+
# @param to [Integer] Specifies upper limit.
|
|
13
|
+
# @return [Integer]
|
|
14
|
+
#
|
|
15
|
+
# @example
|
|
16
|
+
# Faker::Finance.amount_between #=> 0
|
|
17
|
+
# Faker::Finance.amount_between(0, 10) #=> 4.33
|
|
18
|
+
#
|
|
19
|
+
# @faker.version 1.9.0
|
|
20
|
+
def amount_between(from: 0, to: 0)
|
|
15
21
|
Faker::Base.rand_in_range(from, to).round(2)
|
|
16
22
|
end
|
|
17
23
|
|
|
18
|
-
|
|
19
|
-
#
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
24
|
+
##
|
|
25
|
+
# Produces a random valid reference accoring to the International bank slip reference https://en.wikipedia.org/wiki/Creditor_Reference
|
|
26
|
+
#
|
|
27
|
+
# @param ref [String] Specifies reference base.
|
|
28
|
+
# @return [String]
|
|
29
|
+
#
|
|
30
|
+
# @example
|
|
31
|
+
# Faker::Invoice.creditor_reference #=> "RF34118592570724925498"
|
|
32
|
+
#
|
|
33
|
+
# @faker.version 1.9.0
|
|
34
|
+
def creditor_reference(ref: '')
|
|
25
35
|
ref = reference if ref.empty?
|
|
26
36
|
|
|
27
|
-
|
|
37
|
+
"RF#{iban_checksum('RF', ref)}#{ref}"
|
|
28
38
|
end
|
|
29
39
|
|
|
30
|
-
|
|
31
|
-
#
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
40
|
+
##
|
|
41
|
+
# Produces a random valid reference.
|
|
42
|
+
#
|
|
43
|
+
# @param ref [String] Specifies reference base.
|
|
44
|
+
# @return [String]
|
|
45
|
+
#
|
|
46
|
+
# @example
|
|
47
|
+
# Faker::Invoice.reference #=> "45656646957845"
|
|
48
|
+
#
|
|
49
|
+
# @faker.version 1.9.0
|
|
50
|
+
def reference(ref: '')
|
|
37
51
|
pattern = fetch('invoice.reference.pattern')
|
|
38
52
|
|
|
39
53
|
ref = Base.regexify(/#{pattern}/) if ref.empty?
|
|
@@ -88,7 +102,7 @@ module Faker
|
|
|
88
102
|
mod10_remainder(weighted_sum)
|
|
89
103
|
end
|
|
90
104
|
|
|
91
|
-
# Calculates
|
|
105
|
+
# Calculates weighted sum
|
|
92
106
|
#
|
|
93
107
|
# For example with 12345678, [1,2]
|
|
94
108
|
# Ref.num. 1 2 3 4 5 6 7 8
|
data/lib/faker/default/json.rb
CHANGED
|
@@ -3,37 +3,75 @@ module Faker
|
|
|
3
3
|
require 'json'
|
|
4
4
|
|
|
5
5
|
class << self
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
##
|
|
7
|
+
# Produces a random simple JSON formatted string.
|
|
8
|
+
#
|
|
9
|
+
# @param width [Integer] Specifies the number of key-value pairs.
|
|
10
|
+
# @param options [Hash] Specifies a Faker gem class to use for keys and for values, respectably. options_hash = {key: Class.method, value: Class.method}
|
|
11
|
+
# @return [Hash{String => String}]
|
|
12
|
+
#
|
|
13
|
+
# @example
|
|
14
|
+
# Faker::Json.shallow_json(width: 3, options: { key: 'RockBand.name', value: 'Seinfeld.quote' }) # =>
|
|
15
|
+
# {"Parliament Funkadelic":"They're real, and they're spectacular.",
|
|
16
|
+
# "Fleetwood Mac":"I'm not a lesbian. I hate men, but I'm not a lesbian.",
|
|
17
|
+
# "The Roots":"It became very clear to me sitting out there today that every decision
|
|
18
|
+
# I've made in my entire life has been wrong. My life is the complete opposite of everything
|
|
19
|
+
# I want it to be. Every instinct I have, in every aspect of life, be it something to wear,
|
|
20
|
+
# something to eat - it's all been wrong."}
|
|
21
|
+
#
|
|
22
|
+
# @faker.version 1.9.2
|
|
23
|
+
def shallow_json(width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
|
24
|
+
options[:key] = "Faker::#{options[:key]}"
|
|
25
|
+
options[:value] = "Faker::#{options[:value]}"
|
|
14
26
|
|
|
15
27
|
hash = build_shallow_hash(width, options)
|
|
16
28
|
JSON.generate(hash)
|
|
17
29
|
end
|
|
18
30
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
##
|
|
32
|
+
# Produces a random nested JSON formatted string that can take JSON as an additional argument.
|
|
33
|
+
#
|
|
34
|
+
# @param json [Hash{String => String}] Specifies a Json.shallow_json and uses its keys as keys of the nested JSON.
|
|
35
|
+
# @param width [Integer] Specifies the number of nested key-value pairs.
|
|
36
|
+
# @param options [Hash] Specifies a Faker gem class to use for nested keys and for values, respectably. options_hash = {key: Class.method, value: Class.method}
|
|
37
|
+
# @return [Hash{String => String}]
|
|
38
|
+
#
|
|
39
|
+
# @example
|
|
40
|
+
# json = Faker::Json.shallow_json(width: 3, options: { key: 'Name.first_name', value: 'Name.last_name' })
|
|
41
|
+
# puts json # =>
|
|
42
|
+
# {"Alisha":"Olson","Everardo":"DuBuque","Bridgette":"Turner"}
|
|
43
|
+
#
|
|
44
|
+
# json2 = Faker::Json.add_depth_to_json(json: json, width: 2, options: { key: 'Name.first_name', value: 'Name.last_name' })
|
|
45
|
+
# puts json2 # =>
|
|
46
|
+
# {"Alisha":{"Daisy":"Trantow","Oda":"Haag"},
|
|
47
|
+
# "Everardo":{"Javier":"Marvin","Eliseo":"Schuppe"},
|
|
48
|
+
# "Bridgette":{"Jorge":"Kertzmann","Lelah":"MacGyver"}}
|
|
49
|
+
#
|
|
50
|
+
# json3 = Faker::Json.add_depth_to_json(json: json2, width: 4, options: { key: 'Name.first_name', value: 'Name.last_name' })
|
|
51
|
+
# puts json3 # =>
|
|
52
|
+
# {"Alisha":
|
|
53
|
+
# {"Daisy":
|
|
54
|
+
# {"Bulah":"Wunsch","Cristian":"Champlin","Lester":"Bartoletti","Greg":"Jacobson"},
|
|
55
|
+
# "Oda":
|
|
56
|
+
# {"Salvatore":"Kuhlman","Aubree":"Okuneva","Larry":"Schmitt","Velva":"Gibson"}},
|
|
57
|
+
# "Everardo":
|
|
58
|
+
# {"Javier":
|
|
59
|
+
# {"Eduardo":"Orn","Laila":"Kub","Thad":"Legros","Dion":"Wilderman"},
|
|
60
|
+
# "Eliseo":
|
|
61
|
+
# {"Olin":"Hilpert","Marisa":"Greenfelder","Karlee":"Schmitt","Judd":"Larkin"}},
|
|
62
|
+
# "Bridgette":
|
|
63
|
+
# {"Jorge":
|
|
64
|
+
# {"Eloy":"Pfeffer","Kody":"Hansen","Paxton":"Lubowitz","Abe":"Lesch"},
|
|
65
|
+
# "Lelah":
|
|
66
|
+
# {"Rick":"Wiza","Bonita":"Bayer","Gardner":"Auer","Felicity":"Abbott"}}}
|
|
67
|
+
#
|
|
68
|
+
# @faker.version 1.9.2
|
|
69
|
+
def add_depth_to_json(json: shallow_json, width: 3, options: { key: 'Name.first_name', value: 'Name.first_name' })
|
|
70
|
+
options[:key] = "Faker::#{options[:key]}"
|
|
71
|
+
options[:value] = "Faker::#{options[:value]}"
|
|
34
72
|
|
|
35
73
|
hash = JSON.parse(json)
|
|
36
|
-
hash.
|
|
74
|
+
hash.each_key do |key|
|
|
37
75
|
add_hash_to_bottom(hash, [key], width, options)
|
|
38
76
|
end
|
|
39
77
|
JSON.generate(hash)
|
|
@@ -55,7 +93,7 @@ module Faker
|
|
|
55
93
|
def add_hash_to_bottom(hash, key_array, width, options)
|
|
56
94
|
key_string = build_keys_from_array(key_array)
|
|
57
95
|
if eval("hash#{key_string}").is_a?(::Hash)
|
|
58
|
-
eval("hash#{key_string}").
|
|
96
|
+
eval("hash#{key_string}").each_key do |key|
|
|
59
97
|
key_array << key
|
|
60
98
|
add_hash_to_bottom(hash, key_array, width, options)
|
|
61
99
|
end
|
data/lib/faker/default/lorem.rb
CHANGED
|
@@ -4,25 +4,59 @@ module Faker
|
|
|
4
4
|
# Based on Perl's Text::Lorem
|
|
5
5
|
class Lorem < Base
|
|
6
6
|
class << self
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
##
|
|
8
|
+
# Returs the random word
|
|
9
|
+
# @return [String]
|
|
10
|
+
#
|
|
11
|
+
# @example
|
|
12
|
+
# Faker::Lorem.word #=> "soluto"
|
|
13
|
+
# Faker::Lorem.word(exclude_words: 'error') #=> "nisi"
|
|
14
|
+
# Faker::Lorem.word(exclude_words: 'id, error') #=> "et"
|
|
15
|
+
# Faker::Lorem.word(exclude_words: ['id', 'error']) #=> "consequatur"
|
|
16
|
+
#
|
|
17
|
+
# @faker.version 2.1.3
|
|
18
|
+
def word(exclude_words: nil)
|
|
19
|
+
words(number: 1, exclude_words: exclude_words).first
|
|
9
20
|
end
|
|
10
21
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
22
|
+
##
|
|
23
|
+
# Generates random 3 words
|
|
24
|
+
#
|
|
25
|
+
# @param number [Integer] Number of words to be generated
|
|
26
|
+
# @param supplemental [Boolean] Whether to attach supplemental words at the end, default is false
|
|
27
|
+
#
|
|
28
|
+
# @return [Array] Array for words
|
|
29
|
+
#
|
|
30
|
+
# @example
|
|
31
|
+
# Faker::Lorem.words #=> ["hic", "quia", "nihil"]
|
|
32
|
+
# Faker::Lorem.words(number: 4) #=> ["est", "temporibus", "et", "quaerat"]
|
|
33
|
+
# Faker::Lorem.words(number: 4, supplemental: true) #=> ["nisi", "sit", "allatus", "consequatur"]
|
|
34
|
+
# Faker::Lorem.words(number: 4, supplemental: true, exclude_words: 'sit') #=> ["nisi", "allatus", "consequatur", "aut"]
|
|
35
|
+
#
|
|
36
|
+
# @faker.version 2.1.3
|
|
37
|
+
def words(number: 3, supplemental: false, exclude_words: nil)
|
|
17
38
|
resolved_num = resolve(number)
|
|
18
39
|
word_list = (
|
|
19
40
|
translate('faker.lorem.words') +
|
|
20
41
|
(supplemental ? translate('faker.lorem.supplemental') : [])
|
|
21
42
|
)
|
|
43
|
+
if exclude_words
|
|
44
|
+
exclude_words = exclude_words.split(', ') if exclude_words.instance_of?(::String)
|
|
45
|
+
word_list -= exclude_words
|
|
46
|
+
end
|
|
22
47
|
word_list *= ((resolved_num / word_list.length) + 1)
|
|
23
|
-
|
|
48
|
+
sample(word_list, resolved_num)
|
|
24
49
|
end
|
|
25
50
|
|
|
51
|
+
##
|
|
52
|
+
# Generates single character
|
|
53
|
+
#
|
|
54
|
+
# @return [String]
|
|
55
|
+
#
|
|
56
|
+
# @example
|
|
57
|
+
# Faker::Lorem.character #=> "e"
|
|
58
|
+
#
|
|
59
|
+
# @faker.version 2.1.3
|
|
26
60
|
def character
|
|
27
61
|
sample(Types::CHARACTERS)
|
|
28
62
|
end
|
|
@@ -43,94 +77,162 @@ module Faker
|
|
|
43
77
|
# Faker::Lorem.characters(number: 10, min_alpha: 4, min_numeric: 1) #=> "ang9cbhoa8"
|
|
44
78
|
#
|
|
45
79
|
# @faker.version 2.1.3
|
|
46
|
-
def characters(
|
|
47
|
-
warn_for_deprecated_arguments do |keywords|
|
|
48
|
-
keywords << :number if legacy_number != NOT_GIVEN
|
|
49
|
-
end
|
|
50
|
-
|
|
80
|
+
def characters(number: 255, min_alpha: 0, min_numeric: 0)
|
|
51
81
|
Alphanumeric.alphanumeric(number: number, min_alpha: min_alpha, min_numeric: min_numeric)
|
|
52
82
|
end
|
|
53
83
|
|
|
84
|
+
##
|
|
85
|
+
# Generates the emoji
|
|
86
|
+
#
|
|
87
|
+
# @return [String]
|
|
88
|
+
#
|
|
89
|
+
# @example
|
|
90
|
+
# Faker::Lorem.multibyte #=> "😀"
|
|
91
|
+
# Faker::Lorem.multibyte #=> "❤"
|
|
92
|
+
#
|
|
93
|
+
# @faker.version 2.1.3
|
|
54
94
|
def multibyte
|
|
55
95
|
sample(translate('faker.lorem.multibyte')).pack('C*').force_encoding('utf-8')
|
|
56
96
|
end
|
|
57
97
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
98
|
+
##
|
|
99
|
+
# Generates sentence
|
|
100
|
+
#
|
|
101
|
+
# @param word_count [Integer] How many words should be there in a sentence, default to 4
|
|
102
|
+
# @param supplemental [Boolean] Add supplemental words, default to false
|
|
103
|
+
# @param random_words_to_add [Integer] Add any random words, default to 0
|
|
104
|
+
#
|
|
105
|
+
# @return [String]
|
|
106
|
+
#
|
|
107
|
+
# @example
|
|
108
|
+
# Faker::Lorem.sentence #=> "Magnam qui aut quidem."
|
|
109
|
+
# Faker::Lorem.sentence(word_count: 5) #=> "Voluptas rerum aut aliquam velit."
|
|
110
|
+
# Faker::Lorem.sentence(word_count: 5, supplemental: true) #=> "Aut viscus curtus votum iusto."
|
|
111
|
+
# Faker::Lorem.sentence(word_count: 5, supplemental: true, random_words_to_add:2) #=> "Crinis quo cruentus velit animi vomer."
|
|
112
|
+
#
|
|
113
|
+
# @faker.version 2.1.3
|
|
114
|
+
def sentence(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
|
115
|
+
words(number: word_count + rand(random_words_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space).capitalize + locale_period
|
|
68
116
|
end
|
|
69
117
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
118
|
+
##
|
|
119
|
+
# Generates three sentences
|
|
120
|
+
#
|
|
121
|
+
# @param number [Integer] How many sentences to be generated, default to 3
|
|
122
|
+
# @param supplemental [Boolean] Should add supplemental words, defaults to false
|
|
123
|
+
#
|
|
124
|
+
# @return [Array] Returns array for sentences.
|
|
125
|
+
#
|
|
126
|
+
# @example
|
|
127
|
+
# Faker::Lorem.sentences #=> ["Possimus non tenetur.", "Nulla non excepturi.", "Quisquam rerum facilis."]
|
|
128
|
+
# Faker::Lorem.sentences(number: 2) #=> ["Nulla est natus.", "Perferendis autem cum."]
|
|
129
|
+
# Faker::Lorem.sentences(number: 2, supplemental: true) #=> ["Cito cena ad.", "Solvo animus allatus."]
|
|
130
|
+
#
|
|
131
|
+
# @faker.version 2.1.3
|
|
132
|
+
def sentences(number: 3, supplemental: false, exclude_words: nil)
|
|
133
|
+
1.upto(resolve(number)).collect { sentence(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
77
134
|
end
|
|
78
135
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
136
|
+
##
|
|
137
|
+
# Generates three sentence paragraph
|
|
138
|
+
#
|
|
139
|
+
# @param sentence_count [Integer] Number of sentences in the paragraph
|
|
140
|
+
# @param supplemental [Boolean]
|
|
141
|
+
# @param random_sentences_to_add [Integer]
|
|
142
|
+
#
|
|
143
|
+
# @return [String]
|
|
144
|
+
#
|
|
145
|
+
# @example
|
|
146
|
+
# Faker::Lorem.paragraph
|
|
147
|
+
# #=> "Impedit et est. Aliquid deleniti necessitatibus. Et aspernatur minima."
|
|
148
|
+
# Faker::Lorem.paragraph(sentence_count: 2)
|
|
149
|
+
# #=> "Rerum fugit vitae. Et atque autem."
|
|
150
|
+
# Faker::Lorem.paragraph(sentence_count: 2, supplemental: true)
|
|
151
|
+
# #=> "Terreo coerceo utor. Vester sunt cogito."
|
|
152
|
+
# Faker::Lorem.paragraph(sentence_count: 2, supplemental: true, random_sentences_to_add: 2)
|
|
153
|
+
# #=> "Texo tantillus tamisium. Tribuo amissio tamisium. Facere aut canis."
|
|
154
|
+
#
|
|
155
|
+
# @faker.version 2.1.3
|
|
156
|
+
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 0, exclude_words: nil)
|
|
157
|
+
sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental: supplemental, exclude_words: exclude_words).join(locale_space)
|
|
89
158
|
end
|
|
90
159
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
160
|
+
##
|
|
161
|
+
# Generates three paragraphs
|
|
162
|
+
#
|
|
163
|
+
# @param number [Integer]
|
|
164
|
+
# @param supplemental [Boolean]
|
|
165
|
+
#
|
|
166
|
+
# @return [Array]
|
|
167
|
+
#
|
|
168
|
+
# @example
|
|
169
|
+
# Faker::Lorem.paragraphs
|
|
170
|
+
# Faker::Lorem.paragraphs(number:2)
|
|
171
|
+
# Faker::Lorem.paragraphs(number:2, supplemental: true)
|
|
172
|
+
#
|
|
173
|
+
# @faker.version 2.1.3
|
|
174
|
+
def paragraphs(number: 3, supplemental: false, exclude_words: nil)
|
|
175
|
+
1.upto(resolve(number)).collect { paragraph(sentence_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
100
176
|
end
|
|
101
177
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
178
|
+
##
|
|
179
|
+
# Generates paragraph with 256 characters
|
|
180
|
+
#
|
|
181
|
+
# @param number [Integer]
|
|
182
|
+
# @param supplemental [Boolean]
|
|
183
|
+
#
|
|
184
|
+
# @return [String]
|
|
185
|
+
#
|
|
186
|
+
# @example
|
|
187
|
+
# Faker::Lorem.paragraph_by_chars
|
|
188
|
+
# Faker::Lorem.paragraph_by_chars(number: 20) #=> "Sit modi alias. Imp."
|
|
189
|
+
# Faker::Lorem.paragraph_by_chars(number: 20, supplemental: true) #=> "Certus aveho admove."
|
|
190
|
+
#
|
|
191
|
+
# @faker.version 2.1.3
|
|
192
|
+
def paragraph_by_chars(number: 256, supplemental: false)
|
|
108
193
|
paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
|
|
109
194
|
|
|
110
|
-
paragraph +=
|
|
195
|
+
paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < number
|
|
111
196
|
|
|
112
|
-
paragraph[0...number - 1]
|
|
197
|
+
"#{paragraph[0...number - 1]}."
|
|
113
198
|
end
|
|
114
199
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
200
|
+
##
|
|
201
|
+
# Returns the question with 4 words
|
|
202
|
+
#
|
|
203
|
+
# @param word_count [Integer]
|
|
204
|
+
# @param supplemental [Boolean]
|
|
205
|
+
# @param random_words_to_add [Integer]
|
|
206
|
+
#
|
|
207
|
+
# @return [String]
|
|
208
|
+
#
|
|
209
|
+
# @example
|
|
210
|
+
# Faker::Lorem.question #=> "Natus deleniti sequi laudantium?"
|
|
211
|
+
# Faker::Lorem.question(word_count: 2) #=> "Quo ut?"
|
|
212
|
+
# Faker::Lorem.question(word_count: 2, supplemental: true) #=> "Terga consequatur?"
|
|
213
|
+
# Faker::Lorem.question(word_count: 2, supplemental: true, random_words_to_add: 2) #=> "Depulso uter ut?"
|
|
214
|
+
#
|
|
215
|
+
# @faker.version 2.1.3
|
|
216
|
+
def question(word_count: 4, supplemental: false, random_words_to_add: 0, exclude_words: nil)
|
|
217
|
+
words(number: word_count + rand(random_words_to_add), supplemental: supplemental, exclude_words: exclude_words).join(' ').capitalize + locale_question_mark
|
|
125
218
|
end
|
|
126
219
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
220
|
+
##
|
|
221
|
+
# Generates array of three questions
|
|
222
|
+
#
|
|
223
|
+
# @param number [Integer]
|
|
224
|
+
# @param supplemental [Boolean]
|
|
225
|
+
#
|
|
226
|
+
# @return [Array]
|
|
227
|
+
#
|
|
228
|
+
# @example
|
|
229
|
+
# Faker::Lorem.questions #=> ["Amet culpa enim?", "Voluptatem deleniti numquam?", "Veniam non cum?"]
|
|
230
|
+
# Faker::Lorem.questions(number: 2) #=> ["Minus occaecati nobis?", "Veniam et alias?"]
|
|
231
|
+
# Faker::Lorem.questions(number: 2, supplemental: true) #=> ["Acceptus subito cetera?", "Aro sulum cubicularis?"]
|
|
232
|
+
#
|
|
233
|
+
# @faker.version 2.1.3
|
|
234
|
+
def questions(number: 3, supplemental: false, exclude_words: nil)
|
|
235
|
+
1.upto(resolve(number)).collect { question(word_count: 3, supplemental: supplemental, exclude_words: exclude_words) }
|
|
134
236
|
end
|
|
135
237
|
|
|
136
238
|
private
|
|
@@ -5,56 +5,88 @@ module Faker
|
|
|
5
5
|
class << self
|
|
6
6
|
SUPPORTED_COLORIZATIONS = %w[red green blue].freeze
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
##
|
|
9
|
+
# Produces a random image URL from loremflickr.com.
|
|
10
|
+
#
|
|
11
|
+
# @param size [String] Specifies the size of image to generate.
|
|
12
|
+
# @param search_terms [Array<String>] Adds search terms to the image URL.
|
|
13
|
+
# @param match_all [Boolean] Add "all" as part of the URL.
|
|
14
|
+
# @return [String]
|
|
15
|
+
#
|
|
16
|
+
# @example
|
|
17
|
+
# Faker::LoremFlickr.image #=> "https://loremflickr.com/300/300"
|
|
18
|
+
# Faker::LoremFlickr.image(size: "50x60") #=> "https://loremflickr.com/50/60"
|
|
19
|
+
# Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/50/60/sports"
|
|
20
|
+
# Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/50/60/sports,fitness"
|
|
21
|
+
# Faker::LoremFlickr.image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/50/60/sports,fitness/all"
|
|
22
|
+
#
|
|
23
|
+
# @faker.version 1.9.0
|
|
24
|
+
def image(size: '300x300', search_terms: [], match_all: false)
|
|
17
25
|
build_url(size, nil, search_terms, match_all)
|
|
18
26
|
end
|
|
19
27
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
##
|
|
29
|
+
# Produces a random grayscale image URL from loremflickr.com.
|
|
30
|
+
#
|
|
31
|
+
# @param size [String] Specifies the size of image to generate.
|
|
32
|
+
# @param search_terms [Array<String>] Adds search terms to the image URL.
|
|
33
|
+
# @param match_all [Boolean] Add "all" as part of the URL.
|
|
34
|
+
# @return [String]
|
|
35
|
+
#
|
|
36
|
+
# @example
|
|
37
|
+
# Faker::LoremFlickr.grayscale_image #=> "https://loremflickr.com/g/300/300/all"
|
|
38
|
+
# Faker::LoremFlickr.grayscale_image(size: "50x60") #=> "https://loremflickr.com/g/50/60/all"
|
|
39
|
+
# Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/g/50/60/sports"
|
|
40
|
+
# Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/50/60/g/sports,fitness"
|
|
41
|
+
# Faker::LoremFlickr.grayscale_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/g/50/60/sports,fitness/all"
|
|
42
|
+
#
|
|
43
|
+
# @faker.version 1.9.0
|
|
44
|
+
def grayscale_image(size: '300x300', search_terms: ['all'], match_all: false)
|
|
29
45
|
raise ArgumentError, 'Search terms must be specified for grayscale images' unless search_terms.any?
|
|
30
46
|
|
|
31
47
|
build_url(size, 'g', search_terms, match_all)
|
|
32
48
|
end
|
|
33
49
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
50
|
+
##
|
|
51
|
+
# Produces a random pixelated image URL from loremflickr.com.
|
|
52
|
+
#
|
|
53
|
+
# @param size [String] Specifies the size of image to generate.
|
|
54
|
+
# @param search_terms [Array<String>] Adds search terms to the image URL.
|
|
55
|
+
# @param match_all [Boolean] Add "all" as part of the URL.
|
|
56
|
+
# @return [String]
|
|
57
|
+
#
|
|
58
|
+
# @example
|
|
59
|
+
# Faker::LoremFlickr.pixelated_image #=> "https://loremflickr.com/p/300/300/all"
|
|
60
|
+
# Faker::LoremFlickr.pixelated_image(size: "50x60") #=> "https://loremflickr.com/p/50/60/all"
|
|
61
|
+
# Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports']) #=> "https://loremflickr.com/p/50/60/sports"
|
|
62
|
+
# Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/p/50/60/sports,fitness"
|
|
63
|
+
# Faker::LoremFlickr.pixelated_image(size: "50x60", search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/p/50/60/sports,fitness/all"
|
|
64
|
+
#
|
|
65
|
+
# @faker.version 1.9.0
|
|
66
|
+
def pixelated_image(size: '300x300', search_terms: ['all'], match_all: false)
|
|
43
67
|
raise ArgumentError, 'Search terms must be specified for pixelated images' unless search_terms.any?
|
|
44
68
|
|
|
45
69
|
build_url(size, 'p', search_terms, match_all)
|
|
46
70
|
end
|
|
47
71
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
72
|
+
##
|
|
73
|
+
# Produces a random colorized image URL from loremflickr.com.
|
|
74
|
+
#
|
|
75
|
+
# @param size [String] Specifies the size of image to generate.
|
|
76
|
+
# @param color [String] Specifies the color of image to generate.
|
|
77
|
+
# @param search_terms [Array<String>] Adds search terms to the image URL.
|
|
78
|
+
# @param match_all [Boolean] Add "all" as part of the URL.
|
|
79
|
+
# @return [String]
|
|
80
|
+
#
|
|
81
|
+
# @example
|
|
82
|
+
# Faker::LoremFlickr.image #=> "https://loremflickr.com/red/300/300/all"
|
|
83
|
+
# Faker::LoremFlickr.image(size: "50x60", color: 'blue') #=> "https://loremflickr.com/blue/50/60/all"
|
|
84
|
+
# Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports']) #=> "https://loremflickr.com/blue/50/60/sports"
|
|
85
|
+
# Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports', 'fitness']) #=> "https://loremflickr.com/blue/50/60/sports,fitness"
|
|
86
|
+
# Faker::LoremFlickr.image(size: "50x60", color: 'blue', search_terms: ['sports', 'fitness'], match_all: true) #=> "https://loremflickr.com/blue/50/60/sports,fitness/all"
|
|
87
|
+
#
|
|
88
|
+
# @faker.version 1.9.0
|
|
89
|
+
def colorized_image(size: '300x300', color: 'red', search_terms: ['all'], match_all: false)
|
|
58
90
|
raise ArgumentError, 'Search terms must be specified for colorized images' unless search_terms.any?
|
|
59
91
|
raise ArgumentError, "Supported colorizations are #{SUPPORTED_COLORIZATIONS.join(', ')}" unless SUPPORTED_COLORIZATIONS.include?(color)
|
|
60
92
|
|