Class: Faker::LoremPixel
Constant Summary collapse
- SUPPORTED_CATEGORIES =
%w(abstract animals business cats city food nightlife fashion people nature sports technics transport)
Constants inherited from Base
Base::Letters, Base::Numbers, Base::ULetters
Class Method Summary collapse
Methods inherited from Base
bothify, fetch, fetch_all, flexible, letterify, method_missing, numerify, parse, rand, rand_in_range, regexify, sample, shuffle, translate, unique, with_locale
Class Method Details
.image(size = '300x300', is_gray = false, category = nil, number = nil, text = nil) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/faker/lorem_pixel.rb', line 6 def image(size = '300x300', is_gray = false, category = nil, number = nil, text = nil) raise ArgumentError, 'Size should be specified in format 300x300' unless size.match(/^[0-9]+x[0-9]+$/) raise ArgumentError, "Supported categories are #{SUPPORTED_CATEGORIES.join(', ')}" unless category.nil? || SUPPORTED_CATEGORIES.include?(category) raise ArgumentError, 'Category required when number is passed' if !number.nil? && category.nil? raise ArgumentError, 'Number must be between 1 and 10' unless number.nil? || (1..10).include?(number) raise ArgumentError, 'Category and number must be passed when text is passed' if !text.nil? && number.nil? && category.nil? url_parts = ['http://lorempixel.com'] url_parts << 'g' if is_gray url_parts += size.split('x') url_parts += [category, number, text].compact url_parts.join('/') end |