mirror of
https://github.com/we-promise/sure.git
synced 2026-04-20 12:34:12 +00:00
Multi-Currency Part 2 (#543)
* Support all currencies, handle outside DB * Remove currencies from seed * Fix account balance namespace * Set default currency on authentication * Cache currency instances * Implement multi-currency syncs with tests * Series fallback, passing tests * Fix conflicts * Make value group concrete class that works with currency values * Fix migration conflict * Update tests to expect multi-currency results * Update account list to use group method * Namespace updates * Fetch unknown exchange rates from API * Fix date range bug * Ensure demo data works without external API * Enforce cascades only at DB level
This commit is contained in:
@@ -87,4 +87,13 @@ class MoneyTest < ActiveSupport::TestCase
|
||||
assert_equal "$1,000.90", Money.new(1000.899).format
|
||||
assert_equal "€1.000,12", Money.new(1000.12, :eur).format
|
||||
end
|
||||
|
||||
test "can exchange to another currency" do
|
||||
er = exchange_rates(:today_usd_to_eur)
|
||||
assert_equal Money.new(1000).exchange_to(:eur), Money.new(1000 * er.rate, :eur)
|
||||
end
|
||||
|
||||
test "returns nil if exchange rate not available" do
|
||||
assert_nil Money.new(1000).exchange_to(:jpy)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user