Sha256: c3d0bdef8202232c146efad33e983941ade76915adce87db881f9f10195b4bbb
Contents?: true
Size: 987 Bytes
Versions: 1
Compression:
Stored size: 987 Bytes
Contents
class String def integer? return true if self =~ /^[1-9]\d*(\.\d+)?$/ false end end module Tippy class Builder def initialize total:, gratuity: @total = total @gratuity = gratuity end def generate return calculation if number_based? string_based end def number_based? (@gratuity.is_a? Numeric) || (@gratuity.integer?) end def string_based case @gratuity.downcase when 'high' then calculation 25 when 'standard' then calculation 18 when 'low' then calculation 15 end end def calculation gratuity = @gratuity @total += @total * (gratuity.to_f / 100) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
tippy_mun-0.1.6 | lib/tippy_mun/builder.rb |