currency_conversion v0.1.1 CurrencyConversion

Module to Convert Currencies.

Summary

Functions

convert(amount, to_currency, rates \\ UpdateWorker.get_rates())

Convert from currency A to B.

Example

iex> CurrencyConversion.convert(Money.new(7_00, :CHF), :USD, %CurrencyConversion.Rates{base: :EUR,
...>  rates: %{CHF: 0.5, USD: 0.75}})
%Money{amount: 10_50, currency: :USD}

iex> CurrencyConversion.convert(Money.new(7_00, :EUR), :USD, %CurrencyConversion.Rates{base: :EUR,
...>  rates: %{CHF: 0.5, USD: 0.75}})
%Money{amount: 5_25, currency: :USD}

iex> CurrencyConversion.convert(Money.new(7_00, :CHF), :EUR, %CurrencyConversion.Rates{base: :EUR,
...>  rates: %{CHF: 0.5, USD: 0.75}})
%Money{amount: 14_00, currency: :EUR}

iex> CurrencyConversion.convert(Money.new(0, :CHF), :EUR, %CurrencyConversion.Rates{base: :EUR,
...>  rates: %{CHF: 0.5, USD: 0.75}})
%Money{amount: 0, currency: :EUR}