class SSS

Public Instance Methods

call() click to toggle source
# File lib/sss_calculator.rb, line 7
def call
  load_csv
  set_bracket
  set_er
  set_ee
  set_ec
  return_contributions
end

Private Instance Methods

load_csv() click to toggle source

read CSV then create array of hashes for each row

# File lib/sss_calculator.rb, line 19
def load_csv
  @csv = get_rows_from_csv("sss_table.csv")
end
return_contributions() click to toggle source
# File lib/sss_calculator.rb, line 40
def return_contributions
  { er: @er, ee: @ee, ec: @ec}
end
set_bracket() click to toggle source
# File lib/sss_calculator.rb, line 23
def set_bracket
  @bracket = @csv.select { |row| row["min"] <= @compensation && row["max"] >= @compensation }
  @bracket = @bracket.any? ? @bracket.first : { er: 0, ee: 0, ec: 0 }
end
set_ec() click to toggle source
# File lib/sss_calculator.rb, line 36
def set_ec
  @ec = @bracket["ec"]
end
set_ee() click to toggle source
# File lib/sss_calculator.rb, line 32
def set_ee
  @ee = @bracket["ee"]
end
set_er() click to toggle source
# File lib/sss_calculator.rb, line 28
def set_er
  @er = @bracket["er"]
end