foodsoft/config/initializers/ruby_units.rb
Philipp Rothmann fb2b4d8a8a chore: rubocop
chore: fix api test conventions

chore: rubocop -A spec/

chore: more rubocop -A

fix failing test

rubocop fixes

removes helper methods that are in my opinion dead code

more rubocop fixes

rubocop -a --auto-gen-config
2023-06-09 17:35:05 +02:00

44 lines
1.3 KiB
Ruby

# add some more units
if defined? RubyUnits
RubyUnits::Unit.redefine!('liter') do |unit|
unit.aliases += %w[ltr]
end
RubyUnits::Unit.redefine!('kilogram') do |unit|
unit.aliases += %w[KG]
end
RubyUnits::Unit.redefine!('gram') do |unit|
unit.aliases += %w[gr]
end
RubyUnits::Unit.define('piece') do |unit|
unit.definition = RubyUnits::Unit.new('1 each')
unit.aliases = %w[pc pcs piece pieces] # locale: en
unit.aliases += %w[st stuk stuks] # locale: nl
unit.kind = :counting
end
RubyUnits::Unit.define('bag') do |unit|
unit.definition = RubyUnits::Unit.new('1 each')
unit.aliases = %w[bag bags blt sachet sachets] # locale: en
unit.aliases += %w[zak zakken zakje zakjes] # locale: nl
unit.kind = :counting
end
# we use pc for piece, not parsec
RubyUnits::Unit.redefine!('parsec') do |unit|
unit.aliases = unit.aliases.reject { |u| u == 'pc' }
unit.display_name = 'parsec'
end
# workaround for ruby-units' require mathn warning: "zero and implicit precision is deprecated."
# default precision of 8 which same as all database definitions in db/migrate/20131213002332_*.rb
class Rational
alias orig_to_d to_d
def to_d(precision = 8)
orig_to_d(precision)
end
end
end