class FxPotato::CLIFormatter
Public Class Methods
result(fxrate)
click to toggle source
# File lib/fxpotato/cli_formatter.rb, line 3 def self.result(fxrate) fxrate && fxrate['rate'] ? pass_message(fxrate) : fail_message(fxrate) end
Private Class Methods
fail_message(fxrate)
click to toggle source
# File lib/fxpotato/cli_formatter.rb, line 12 def self.fail_message(fxrate) "Unable to calculate that exchange rate, here's why:\n#{inspect_rate_block(fxrate['base'], fxrate['date'])}\n#{inspect_rate_block(fxrate['target'], fxrate['date'])}" end
inspect_rate_block(rate_block, date)
click to toggle source
# File lib/fxpotato/cli_formatter.rb, line 20 def self.inspect_rate_block(rate_block, date) rate_block['rate'] ? "" : "\tUnable to find rate for #{rate_block['key']} on #{date}" end
key_and_rate(rate_block)
click to toggle source
# File lib/fxpotato/cli_formatter.rb, line 16 def self.key_and_rate(rate_block) "#{rate_block['key']}(#{rate_block['rate']})" end
pass_message(fxrate)
click to toggle source
# File lib/fxpotato/cli_formatter.rb, line 8 def self.pass_message(fxrate) "Exchange rate from #{key_and_rate(fxrate['base'])} to #{key_and_rate(fxrate['target'])} on #{fxrate['date']}: #{fxrate['rate']}" end