class Faker::Measurement
Constants
- ALL
- NONE
Public Class Methods
height(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 7 def height(amount = rand(10)) define_measurement_locale(amount, 'height') end
length(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 11 def length(amount = rand(10)) define_measurement_locale(amount, 'length') end
metric_height(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 23 def metric_height(amount = rand(10)) define_measurement_locale(amount, 'metric_height') end
metric_length(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 27 def metric_length(amount = rand(10)) define_measurement_locale(amount, 'metric_length') end
metric_volume(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 31 def metric_volume(amount = rand(10)) define_measurement_locale(amount, 'metric_volume') end
metric_weight(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 35 def metric_weight(amount = rand(10)) define_measurement_locale(amount, 'metric_weight') end
volume(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 15 def volume(amount = rand(10)) define_measurement_locale(amount, 'volume') end
weight(amount = rand(10))
click to toggle source
# File lib/faker/measurement.rb, line 19 def weight(amount = rand(10)) define_measurement_locale(amount, 'weight') end
Private Class Methods
check_for_plural(text, number)
click to toggle source
# File lib/faker/measurement.rb, line 41 def check_for_plural(text, number) if number && number != 1 make_plural(text) else text end end
define_measurement_locale(amount, locale)
click to toggle source
# File lib/faker/measurement.rb, line 49 def define_measurement_locale(amount, locale) ensure_valid_amount(amount) if amount == ALL make_plural(fetch("measurement.#{locale}")) elsif amount == NONE fetch("measurement.#{locale}") else locale = check_for_plural(fetch("measurement.#{locale}"), amount) "#{amount} #{locale}" end end
ensure_valid_amount(amount)
click to toggle source
# File lib/faker/measurement.rb, line 62 def ensure_valid_amount(amount) raise ArgumentError, 'invalid amount' unless amount == NONE || amount == ALL || amount.is_a?(Integer) || amount.is_a?(Float) end
make_plural(text)
click to toggle source
# File lib/faker/measurement.rb, line 66 def make_plural(text) case text when 'foot' 'feet' when 'inch' 'inches' when 'fluid ounce' 'fluid ounces' when 'metric ton' 'metric tons' else "#{text}s" end end